123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- version: '3'
- services:
- shlink_nginx:
- container_name: shlink_nginx
- image: nginx:1.19.6-alpine
- ports:
- - "8000:80"
- volumes:
- - ./:/home/shlink/www
- - ./docs:/home/shlink/www/public/docs
- - ./data/infra/vhost.conf:/etc/nginx/conf.d/default.conf
- links:
- - shlink_php
- shlink_php:
- container_name: shlink_php
- build:
- context: .
- dockerfile: ./data/infra/php.Dockerfile
- volumes:
- - ./:/home/shlink/www
- - ./data/infra/php.ini:/usr/local/etc/php/php.ini
- links:
- - shlink_db
- - shlink_db_postgres
- - shlink_db_maria
- - shlink_db_ms
- - shlink_redis
- - shlink_mercure
- - shlink_mercure_proxy
- environment:
- LC_ALL: C
- shlink_swoole_proxy:
- container_name: shlink_swoole_proxy
- image: nginx:1.19.6-alpine
- ports:
- - "8002:80"
- volumes:
- - ./:/home/shlink/www
- - ./data/infra/swoole_proxy_vhost.conf:/etc/nginx/conf.d/default.conf
- links:
- - shlink_swoole
- shlink_swoole:
- container_name: shlink_swoole
- build:
- context: .
- dockerfile: ./data/infra/swoole.Dockerfile
- ports:
- - "8080:8080"
- - "9001:9001"
- volumes:
- - ./:/home/shlink
- - ./data/infra/php.ini:/usr/local/etc/php/php.ini
- links:
- - shlink_db
- - shlink_db_postgres
- - shlink_db_maria
- - shlink_db_ms
- - shlink_redis
- - shlink_mercure
- - shlink_mercure_proxy
- environment:
- LC_ALL: C
- shlink_db:
- container_name: shlink_db
- image: mysql:5.7
- ports:
- - "3307:3306"
- volumes:
- - ./:/home/shlink/www
- - ./data/infra/database:/var/lib/mysql
- environment:
- MYSQL_ROOT_PASSWORD: root
- MYSQL_DATABASE: shlink
- shlink_db_postgres:
- container_name: shlink_db_postgres
- image: postgres:12.2-alpine
- ports:
- - "5433:5432"
- volumes:
- - ./:/home/shlink/www
- - ./data/infra/database_pg:/var/lib/postgresql/data
- environment:
- POSTGRES_PASSWORD: root
- POSTGRES_DB: shlink
- PGDATA: /var/lib/postgresql/data/pgdata
- shlink_db_maria:
- container_name: shlink_db_maria
- image: mariadb:10.5
- ports:
- - "3308:3306"
- volumes:
- - ./:/home/shlink/www
- - ./data/infra/database_maria:/var/lib/mysql
- environment:
- MYSQL_ROOT_PASSWORD: root
- MYSQL_DATABASE: shlink
- MYSQL_INITDB_SKIP_TZINFO: 1
- shlink_db_ms:
- container_name: shlink_db_ms
- image: mcr.microsoft.com/mssql/server:2019-latest
- ports:
- - "1433:1433"
- environment:
- ACCEPT_EULA: Y
- SA_PASSWORD: "Passw0rd!"
- shlink_redis:
- container_name: shlink_redis
- image: redis:6.0-alpine
- ports:
- - "6380:6379"
- shlink_mercure_proxy:
- container_name: shlink_mercure_proxy
- image: nginx:1.19.6-alpine
- ports:
- - "8001:80"
- volumes:
- - ./:/home/shlink/www
- - ./data/infra/mercure_proxy_vhost.conf:/etc/nginx/conf.d/default.conf
- links:
- - shlink_mercure
- shlink_mercure:
- container_name: shlink_mercure
- image: dunglas/mercure:v0.10
- ports:
- - "3080:80"
- environment:
- CORS_ALLOWED_ORIGINS: "*"
- JWT_KEY: "mercure_jwt_key"
- USE_FORWARDED_HEADERS: "1"
|