49a4cfd510
Apache Guacamole para acceso RDP/SSH/VNC desde el navegador, protegido con Authentik SSO. Incluye script de inicialización de base de datos. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
70 lines
2.2 KiB
YAML
70 lines
2.2 KiB
YAML
services:
|
|
guacd:
|
|
image: ${GUACD_IMAGE}
|
|
pull_policy: always
|
|
container_name: guacd
|
|
restart: unless-stopped
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
networks:
|
|
- guacamole
|
|
|
|
postgres:
|
|
image: ${GUACAMOLE_POSTGRES_IMAGE}
|
|
container_name: guacamole-postgres
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_DB: ${GUACAMOLE_DB_NAME}
|
|
POSTGRES_USER: ${GUACAMOLE_DB_USER}
|
|
POSTGRES_PASSWORD: ${GUACAMOLE_DB_PASSWORD}
|
|
POSTGRES_INITDB_ARGS: "--auth-host=scram-sha-256"
|
|
volumes:
|
|
- ${GUACAMOLE_DATA_PATH}:/var/lib/postgresql/data:Z
|
|
- ./initdb:/docker-entrypoint-initdb.d:ro,Z
|
|
networks:
|
|
- guacamole
|
|
|
|
guacamole:
|
|
image: ${GUACAMOLE_IMAGE}
|
|
pull_policy: always
|
|
container_name: guacamole
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- guacd
|
|
- postgres
|
|
environment:
|
|
TZ: ${TZ}
|
|
WEBAPP_CONTEXT: ROOT
|
|
GUACD_HOSTNAME: guacd
|
|
POSTGRESQL_HOSTNAME: postgres
|
|
POSTGRESQL_DATABASE: ${GUACAMOLE_DB_NAME}
|
|
POSTGRESQL_USERNAME: ${GUACAMOLE_DB_USER}
|
|
POSTGRESQL_PASSWORD: ${GUACAMOLE_DB_PASSWORD}
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
networks:
|
|
- guacamole
|
|
- proxy
|
|
labels:
|
|
traefik.enable: "true"
|
|
traefik.docker.network: "${TRAEFIK_DOCKER_NETWORK}"
|
|
traefik.http.routers.guacamole.rule: "Host(`${GUACAMOLE_DOMAIN}`)"
|
|
traefik.http.routers.guacamole.entrypoints: "${TRAEFIK_ENTRYPOINT_SECURE}"
|
|
traefik.http.routers.guacamole.tls: "true"
|
|
traefik.http.routers.guacamole.tls.certresolver: "${TRAEFIK_CERTRESOLVER}"
|
|
traefik.http.routers.guacamole.middlewares: "crowdsec-bouncer@file,${TRAEFIK_AUTH_MIDDLEWARE}"
|
|
traefik.http.services.guacamole.loadbalancer.server.port: "8080"
|
|
homepage.group: "Infraestructura"
|
|
homepage.name: "Remote Desktop"
|
|
homepage.icon: "https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/apache-guacamole.svg"
|
|
homepage.description: "XFCE del servidor via navegador"
|
|
homepage.href: "https://${GUACAMOLE_DOMAIN}/"
|
|
homepage.siteMonitor: "http://guacamole:8080/"
|
|
homepage.weight: "360"
|
|
|
|
networks:
|
|
guacamole:
|
|
driver: bridge
|
|
proxy:
|
|
external: true
|