1. The problem I’m having:
I am trying to reverse proxy from a Caddy container (running on host network mode) to a YOURLS container on the same host machine. YOURLS is exposed to host port 8010. When accessing the domain https://link.atakanozban.com/admin/, however returns 502 Bad Gateway. I’ve already opened ports on my hosting provider.
2. Error messages and/or full log output:
{"level":"error","ts":1719958424,"logger":"http.log.error.log1","msg":"dial tcp 127.0.0.1:8010: connect: connection refused","request":{"remote_ip":"X.X.X.X","proto":"HTTP/2","method":"GET","host":"link.atakanozban.com","uri":"/admin/"},"duration":0.00124,"status":502,"err_id":"xyz123","err_trace":"...connection refused"}
3. Caddy version:
v2.11.4
4. How I installed and ran Caddy:
I installed and ran Caddy using Docker Compose.
System environment:
-
OS: Ubuntu 26.04 LTS
-
Docker Version: Docker Engine v27.0
-
Hosting: Hetzner Cloud VPS
b. Command:
docker compose up -d
c. Service/unit/compose file:
version: '3.3'
services:
db:
image: mariadb:10.11
container_name: yourls-db
restart: always
environment:
MYSQL_ROOT_PASSWORD: 'REDACTED_DB_ROOT_PASS'
MYSQL_DATABASE: yourls
MYSQL_USER: yourls
MYSQL_PASSWORD: 'REDACTED_DB_PASS'
volumes:
- db_data:/var/lib/mysql
yourls:
image: yourls:latest
container_name: yourls-app
restart: always
depends_on:
- db
ports:
- "8010:80"
environment:
- YOURLS_SITE=https://link.atakanozban.com
- YOURLS_USER=atakan
- YOURLS_PASS=REDACTED_USER_PASS
- YOURLS_DB_HOST=db
- YOURLS_DB_USER=yourls
- YOURLS_DB_PASS=REDACTED_DB_PASS
volumes:
db_data:
d. My complete Caddy config:
link.atakanozban.com {
reverse_proxy 127.0.0.1:8010
}
5. Links to relevant resources:
I suspect it might be related to a docker network isolation or a similar issue discussed here: https://caddy.community/t/caddy-reverse-proxy-error-502-bad-gateway-on-docker/25353/2