# # Dockerfile for shadowsocks-libev # FROM alpine MAINTAINER kev ENV SERVER_ADDR 0.0.0.0 ENV SERVER_PORT 8388 ENV PASSWORD= ENV METHOD aes-256-cfb ENV TIMEOUT 300 ENV DNS_ADDR 8.8.8.8 ENV DNS_ADDR_2 8.8.4.4 ENV ARGS= COPY . /tmp RUN set -ex && \ apk add --no-cache --virtual .build-deps \ git \ autoconf \ automake \ libtool \ build-base \ libev-dev \ linux-headers \ libsodium-dev \ mbedtls-dev \ pcre-dev \ c-ares-dev && \ cd /tmp && \ git submodule update --init --recursive && \ ./autogen.sh && \ ./configure --prefix=/usr --disable-documentation && \ make install && \ runDeps="$( \ scanelf --needed --nobanner /usr/bin/ss-* \ | awk '{ gsub(/,/, "\nso:", $2); print "so:" $2 }' \ | xargs -r apk info --installed \ | sort -u \ )" && \ apk add --no-cache --virtual .run-deps $runDeps && \ apk del .build-deps && \ rm -rf /tmp/* USER nobody EXPOSE $SERVER_PORT/tcp $SERVER_PORT/udp CMD ss-server -s $SERVER_ADDR \ -p $SERVER_PORT \ -k ${PASSWORD:-$(hostname)} \ -m $METHOD \ -t $TIMEOUT \ --fast-open \ -d $DNS_ADDR \ -d $DNS_ADDR_2 \ -u \ $ARGS