diff --git a/README.md b/README.md index 77d15e92..d1c3c2f0 100644 --- a/README.md +++ b/README.md @@ -329,7 +329,8 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions -* **17.05.26:** - Let server listen on both ipv4 and ipv6 even when running container as root. +* **20.09.26:** - Add fallback for legacy or misconfigured systems without IPv6 support. +* **17.05.26:** - Fix container only listening on IPv6 when running non-root. * **10.08.25:** - Let server listen on both ipv4 and ipv6. * **03.06.25:** - Allow setting PWA name using env var `PWA_APPNAME`. * **13.10.24:** - Only chown config folder when change to ownership or new install is detected. diff --git a/readme-vars.yml b/readme-vars.yml index 3e4b7aa7..7cd3a19d 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -102,7 +102,8 @@ init_diagram: | "code-server:latest" <- Base Images # changelog changelogs: - - {date: "17.05.26:", desc: "Let server listen on both ipv4 and ipv6 even when running container as root."} + - {date: "20.09.26:", desc: "Add fallback for legacy or misconfigured systems without IPv6 support."} + - {date: "17.05.26:", desc: "Fix container only listening on IPv6 when running non-root."} - {date: "10.08.25:", desc: "Let server listen on both ipv4 and ipv6."} - {date: "03.06.25:", desc: "Allow setting PWA name using env var `PWA_APPNAME`."} - {date: "13.10.24:", desc: "Only chown config folder when change to ownership or new install is detected."} diff --git a/root/etc/s6-overlay/s6-rc.d/svc-code-server/run b/root/etc/s6-overlay/s6-rc.d/svc-code-server/run index 5e2ecba4..ac6342c7 100755 --- a/root/etc/s6-overlay/s6-rc.d/svc-code-server/run +++ b/root/etc/s6-overlay/s6-rc.d/svc-code-server/run @@ -18,12 +18,18 @@ if [[ -z ${PWA_APPNAME} ]]; then PWA_APPNAME="code-server" fi +if test -f /proc/net/if_inet6; then + BIND_ADDR="[::]:8443" +else + BIND_ADDR="0.0.0.0:8443" +fi + if [[ -z ${LSIO_NON_ROOT_USER} ]]; then exec \ s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z 127.0.0.1 8443" \ s6-setuidgid abc \ /app/code-server/bin/code-server \ - --bind-addr "[::]:8443" \ + --bind-addr "${BIND_ADDR}" \ --user-data-dir /config/data \ --extensions-dir /config/extensions \ --disable-telemetry \ @@ -35,7 +41,7 @@ else exec \ s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z 127.0.0.1 8443" \ /app/code-server/bin/code-server \ - --bind-addr "[::]:8443" \ + --bind-addr "${BIND_ADDR}" \ --user-data-dir /config/data \ --extensions-dir /config/extensions \ --disable-telemetry \