version: '3' services: shlink_nginx: container_name: shlink_nginx image: nginx:1.17.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_redis 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_redis 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:10.7-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.2 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_redis: container_name: shlink_redis image: redis:5.0-alpine ports: - "6380:6379"