From 26c1bfc4617035267569e6428ea77facad4e318e Mon Sep 17 00:00:00 2001 From: xjasonlyu Date: Sat, 6 Feb 2021 11:50:33 +0800 Subject: [PATCH] Chore: adjust docker env params --- Dockerfile | 13 +++++++------ docker/entrypoint.sh | 16 ++++++++++------ 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8566cc1..eeffa31 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,13 +19,14 @@ RUN apk add --update --no-cache iptables iproute2 \ ENV TUN tun0 ENV ETH eth0 -ENV TUN_ADDR= -ENV TUN_MASK= -ENV LOGLEVEL= -ENV EXCLUDED= -ENV EXTRACMD= -ENV PROXY= +ENV TUN_ADDR=198.18.0.1 +ENV TUN_MASK=255.254.0.0 +ENV LOGLEVEL=INFO +ENV PROXY=direct:// ENV STATS= ENV TOKEN= +ENV EXTRA_COMMANDS= +ENV TUN_INCLUDED_ROUTES= +ENV TUN_EXCLUDED_ROUTES= ENTRYPOINT ["/entrypoint.sh"] diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index 90f224d..6a62294 100644 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -22,7 +22,6 @@ config_route() { TABLE="$1" TUN_IF="$2" ETH_IF="$3" - TUN_EXCLUDED="$4" # add custom table printf "%s\t%s\n" 100 "$TABLE" >>/etc/iproute2/rt_tables @@ -44,19 +43,24 @@ config_route() { ip rule add from "$eth" priority 2000 table main ip rule add from all priority 3000 table "$TABLE" - # add tun excluded to route - for addr in $(echo "$TUN_EXCLUDED" | tr ',' '\n'); do + # add tun included routes + for addr in $(echo "$TUN_INCLUDED_ROUTES" | tr ',' '\n'); do + ip rule add to "$addr" table "$TABLE" + done + + # add tun excluded routes + for addr in $(echo "$TUN_EXCLUDED_ROUTES" | tr ',' '\n'); do ip rule add to "$addr" table main done } main() { mk_tun "$TUN" "$TUN_ADDR" "$TUN_MASK" - config_route "tun2socks" "$TUN" "$ETH" "$EXCLUDED" + config_route "tun2socks" "$TUN" "$ETH" # execute extra commands - if [ -n "$EXTRACMD" ]; then - sh -c "$EXTRACMD" + if [ -n "$EXTRA_COMMANDS" ]; then + sh -c "$EXTRA_COMMANDS" fi if [ -n "$STATS" ]; then