docker – Blame information for rev 12

Subversion Repositories:
Rev:
Rev Author Line No. Line
9 office 1 FROM debian:stable-slim
2  
3 # update package manager
4 RUN apt-get update -y && \
5 apt-get upgrade -y && \
6 apt-get dist-upgrade -y && \
7 apt-get -y autoremove && \
8 apt-get clean
9  
10 # install required packages
11 RUN apt-get install -y \
12 expect \
12 office 13 telnet \
9 office 14 coreutils \
15 bash \
16 curl \
17 git \
18 build-essential \
12 office 19 distcc \
9 office 20 autoconf \
21 automake \
22 libtool \
23 pkgconf \
24 libevent-dev \
25 libssl-dev \
26 libzstd-dev \
27 liblzma-dev \
28 zlib1g \
29 zlib1g-dev
30  
31 # install the latest golang
32 WORKDIR /tmp
33 RUN curl -fsSL "https://go.dev/dl/$(curl -s 'https://go.dev/VERSION?m=text' | head -1).linux-amd64.tar.gz" -o go.tar.gz && \
34 tar -xzf go.tar.gz && \
12 office 35 rm go.tar.gz && \
36 git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git && \
37 cd /tmp/snowflake/client && \
38 /tmp/go/bin/go build && \
9 office 39 mkdir -p /usr/local/bin && \
12 office 40 cp client /usr/local/bin/snowflake-client && \
41 cd /tmp && \
42 rm -rf /tmp/{go,snowflake}
9 office 43  
44 # compile the latest tor
45 WORKDIR /tmp
12 office 46 RUN git clone https://gitlab.torproject.org/tpo/core/tor.git && \
47 cd /tmp/tor && \
48 export DISTCC_HOSTS="docker.internal:35001 docker.internal:35002" CC=distcc CXX='distcc g++' && \
49 ./autogen.sh && \
9 office 50 ./configure \
51 --enable-lzma \
52 --enable-zstd \
53 --disable-gcc-hardening \
54 --disable-linker-hardening \
55 --disable-manpage \
56 --disable-html-manual \
57 --disable-asciidoc \
58 --disable-unittests && \
12 office 59 make -j4 && \
9 office 60 mkdir -p /usr/local/bin && \
12 office 61 cp /tmp/tor/src/app/tor /usr/local/bin/ && \
62 cd /tmp && \
63 rm -rf /tmp/tor
9 office 64  
65 # remove packages that will not be used
66 WORKDIR /
67 RUN apt-get purge -y \
68 curl \
69 git \
70 build-essential \
71 autoconf \
72 automake \
73 libtool \
74 pkgconf && \
75 apt-get autoremove -y
76  
77 # tor required port
78 EXPOSE 9050 9053
79  
80 # add filesystem requirements
81 ADD rootfs /
82  
83 # set up healthcheck
12 office 84 HEALTHCHECK --interval=15m --timeout=3s \
9 office 85 CMD /usr/local/bin/tor-check-circuit
86  
87 # execute the bootstrapper that will start tor
88 ENTRYPOINT [ "/usr/local/bin/run" ]