anvilsign in

collin/anvil · c7ee5863

Bind deploy SSH to the droplet's default public IP

Collin Richards · 2026-08-18 17:22 UTC · c7ee58639bb54b4f7b51aff320e419e696249822 · parent 3ceb8f2e · browse files

modifieddeploy/run.sh+7 −3
⋯ 7 unchanged lines
88
99 IMAGE="${ANVIL_IMAGE:-anvil:latest}"
1010 NETWORK="${ANVIL_NETWORK:-hagrid}"
11-SSH_PORT="${ANVIL_SSH_PORT:-2222}"
11+SSH_PORT="${ANVIL_SSH_PORT:-22}"
12+# Publish SSH on the droplet's DEFAULT public IPv4 only. The reserved IP
13+# (137.184.249.48) is reached via the anchor IP 10.15.0.6, where the host's
14+# own sshd listens — binding a specific IP here keeps the two off each other.
15+SSH_BIND_IP="${ANVIL_SSH_BIND_IP:-165.232.162.167}"
1216 DOCKER_SOCK="${ANVIL_DOCKER_SOCK:-/var/run/docker.sock}"
1317
1418 # The CI runner drives Docker via the host socket. Mount it in, and add the
⋯ 31 unchanged lines
4650 --name anvil \
4751 --network "$NETWORK" \
4852 --restart unless-stopped \
49- -p "${SSH_PORT}:2222" \
53+ -p "${SSH_BIND_IP}:${SSH_PORT}:2222" \
5054 -v anvil-data:/data \
5155 -v "${DOCKER_SOCK}:/var/run/docker.sock" \
5256 --group-add "$SOCK_GID" \
5357 "${OIDC_ENV[@]}" \
5458 "$IMAGE"
5559
56-echo "==> anvil (re)started from $IMAGE (web: anvil:3000 via Caddy, ssh: host :${SSH_PORT}, docker.sock gid ${SOCK_GID})"
60+echo "==> anvil (re)started from $IMAGE (web: anvil:3000 via Caddy, ssh: ${SSH_BIND_IP}:${SSH_PORT}, docker.sock gid ${SOCK_GID})"