Skip to content
Discussion options

You must be logged in to vote

Your -p 80:8000 maps host port 80 to container port 8000, but nothing told the app inside to listen on 8000. Thruster defaults to port 80, so it tries to bind :80 inside the container — and the image runs as a non-root user (USER 1000:1000 in the Dockerfile), which isn't allowed to bind ports below 1024.

That's why the error is about :80 even though you thought you'd moved it to 8000.

Set HTTP_PORT to match the container side of your mapping:

container run --rm -p 80:8000 \
  -e HTTP_PORT=8000 \
  -e SECRET_KEY_BASE=<your-key> \
  -e DISABLE_SSL=true \
  -v fizzy:/storage \
  ghcr.io/basecamp/fizzy:main-arm64

Plain Docker usually hides this, because Docker Desktop and most recent distros …

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by flavorjones
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants