Files
warden/docker/docker-compose.yml

58 lines
1.8 KiB
YAML

version: "3.5"
services:
traefik:
container_name: traefik
image: traefik:${TRAEFIK_VERSION:-2.2}
ports:
- "${TRAEFIK_LISTEN:-127.0.0.1}:80:80" # The HTTP port
- "${TRAEFIK_LISTEN:-127.0.0.1}:443:443" # The HTTPS port
volumes:
- ${WARDEN_HOME_DIR}/etc/traefik/traefik.yml:/etc/traefik/traefik.yml
- ${WARDEN_HOME_DIR}/etc/traefik/dynamic.yml:/etc/traefik/dynamic.yml
- ${WARDEN_HOME_DIR}/ssl/certs:/etc/ssl/certs
- /var/run/docker.sock:/var/run/docker.sock
labels:
- traefik.enable=true
- traefik.http.routers.traefik.tls=true
- traefik.http.routers.traefik.rule=Host(`traefik.${WARDEN_SERVICE_DOMAIN:-warden.test}`)
- traefik.http.routers.traefik.service=api@internal
restart: ${WARDEN_RESTART_POLICY:-always}
mailhog:
container_name: mailhog
image: wardenenv/mailhog:1.0
labels:
- traefik.enable=true
- traefik.http.routers.mailhog.tls=true
- traefik.http.routers.mailhog.rule=Host(`mailhog.${WARDEN_SERVICE_DOMAIN:-warden.test}`)
- traefik.http.services.mailhog.loadbalancer.server.port=8025
restart: ${WARDEN_RESTART_POLICY:-always}
tunnel:
container_name: tunnel
image: panubo/sshd:latest
ports:
- "127.0.0.1:2222:22"
volumes:
- ${WARDEN_HOME_DIR}/tunnel/ssh_key.pub:/etc/authorized_keys/user
- sshd_keys:/etc/ssh/keys
environment:
- |
MOTD=Welcome to the Warden SSH tunnel container!
This tunnel container is used only for forwarding TCP
connections, generally to port 3306 of db containers
and is not typically used with an interactive shell.
- SSH_USERS=user:2000:2000
- TCP_FORWARDING=true
restart: ${WARDEN_RESTART_POLICY:-always}
volumes:
portainer:
sshd_keys:
networks:
default:
name: warden