You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

66 lines
1.8 KiB

  1. #
  2. # Dockerfile for shadowsocks-libev
  3. #
  4. FROM alpine
  5. MAINTAINER kev <noreply@datageek.info>
  6. ARG SS_VER=2.6.3
  7. ARG SS_URL=https://github.com/shadowsocks/shadowsocks-libev/archive/v$SS_VER.tar.gz
  8. ENV SERVER_ADDR 0.0.0.0
  9. ENV SERVER_PORT 8388
  10. ENV PASSWORD=
  11. ENV METHOD aes-256-cfb
  12. ENV TIMEOUT 300
  13. ENV DNS_ADDR 8.8.8.8
  14. ENV DNS_ADDR_2 8.8.4.4
  15. RUN set -ex && \
  16. apk add --no-cache --virtual .build-deps \
  17. libev-dev \
  18. udns-dev \
  19. libsodium-dev \
  20. gettext \
  21. automake \
  22. zlib \
  23. asciidoc \
  24. autoconf \
  25. build-base \
  26. curl \
  27. libtool \
  28. linux-headers \
  29. openssl-dev \
  30. pcre-dev \
  31. tar \
  32. xmlto && \
  33. cd /tmp && \
  34. curl -sSL $SS_URL | tar xz --strip 1 && \
  35. ./autogen.sh && \
  36. ./configure --prefix=/usr --disable-documentation && \
  37. make install && \
  38. cd .. && \
  39. runDeps="$( \
  40. scanelf --needed --nobanner /usr/bin/ss-* \
  41. | awk '{ gsub(/,/, "\nso:", $2); print "so:" $2 }' \
  42. | xargs -r apk info --installed \
  43. | sort -u \
  44. )" && \
  45. apk add --no-cache --virtual .run-deps $runDeps && \
  46. apk del .build-deps && \
  47. rm -rf /tmp/*
  48. USER nobody
  49. EXPOSE $SERVER_PORT/tcp $SERVER_PORT/udp
  50. CMD ss-server -s $SERVER_ADDR \
  51. -p $SERVER_PORT \
  52. -k ${PASSWORD:-$(hostname)} \
  53. -m $METHOD \
  54. -t $TIMEOUT \
  55. --fast-open \
  56. -d $DNS_ADDR \
  57. -d $DNS_ADDR_2 \
  58. -u