Files
shlink/compose.yaml

58 lines
1.3 KiB
YAML

services:
shlink_server:
image: docker.io/shlinkio/shlink:stable
container_name: shlink_server
restart: unless-stopped
env_file:
- .env
networks:
- proxy
- backend
ports:
- "${SHLINK_PORT}:8080"
depends_on:
- shlink_postgres
security_opt:
- no-new-privileges:true
shlink_web:
image: docker.io/shlinkio/shlink-web-client:latest
container_name: shlink_web
environment:
SHLINK_SERVER_URL: "https://${DEFAULT_DOMAIN}"
SHLINK_SERVER_API_KEY: ${API_KEY}
ports:
- ${SHLINK_WEB_PORT}:8080
networks:
- proxy
volumes:
- ./servers.json:/usr/share/nginx/html/servers.json
security_opt:
- no-new-privileges:true
shlink_postgres:
image: docker.io/postgres:17-alpine
container_name: shlink_postgres
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USER}
POSTGRES_DB: ${DB_NAME}
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- backend
security_opt:
- no-new-privileges:true
networks:
proxy:
external: true
backend:
external: true
volumes:
postgres_data:
driver: local
labels:
dev.housh.description: "Shlink postgres database volume."