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 | |||
| 8 | 8 | ||
| 9 | 9 | IMAGE="${ANVIL_IMAGE:-anvil:latest}" | |
| 10 | 10 | 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}" | |
| 12 | 16 | DOCKER_SOCK="${ANVIL_DOCKER_SOCK:-/var/run/docker.sock}" | |
| 13 | 17 | ||
| 14 | 18 | # The CI runner drives Docker via the host socket. Mount it in, and add the | |
| ⋯ 31 unchanged lines | |||
| 46 | 50 | --name anvil \ | |
| 47 | 51 | --network "$NETWORK" \ | |
| 48 | 52 | --restart unless-stopped \ | |
| 49 | - | -p "${SSH_PORT}:2222" \ | |
| 53 | + | -p "${SSH_BIND_IP}:${SSH_PORT}:2222" \ | |
| 50 | 54 | -v anvil-data:/data \ | |
| 51 | 55 | -v "${DOCKER_SOCK}:/var/run/docker.sock" \ | |
| 52 | 56 | --group-add "$SOCK_GID" \ | |
| 53 | 57 | "${OIDC_ENV[@]}" \ | |
| 54 | 58 | "$IMAGE" | |
| 55 | 59 | ||
| 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})" | |