2017-01-20 00:56:45 +03:00
|
|
|
services:
|
|
|
|
shlink_nginx:
|
|
|
|
container_name: shlink_nginx
|
2023-09-17 12:59:23 +03:00
|
|
|
image: nginx:1.25-alpine
|
2017-01-20 00:56:45 +03:00
|
|
|
ports:
|
|
|
|
- "8000:80"
|
|
|
|
volumes:
|
|
|
|
- ./:/home/shlink/www
|
2017-01-21 22:12:12 +03:00
|
|
|
- ./docs:/home/shlink/www/public/docs
|
2019-03-05 15:39:45 +03:00
|
|
|
- ./data/infra/vhost.conf:/etc/nginx/conf.d/default.conf
|
2017-01-20 00:56:45 +03:00
|
|
|
links:
|
|
|
|
- shlink_php
|
|
|
|
|
|
|
|
shlink_php:
|
|
|
|
container_name: shlink_php
|
|
|
|
build:
|
|
|
|
context: .
|
|
|
|
dockerfile: ./data/infra/php.Dockerfile
|
2022-01-15 18:52:48 +03:00
|
|
|
ports:
|
|
|
|
- '8888:8888'
|
2017-01-20 00:56:45 +03:00
|
|
|
volumes:
|
|
|
|
- ./:/home/shlink/www
|
|
|
|
- ./data/infra/php.ini:/usr/local/etc/php/php.ini
|
|
|
|
links:
|
2021-12-11 12:25:58 +03:00
|
|
|
- shlink_db_mysql
|
2019-03-05 15:39:45 +03:00
|
|
|
- shlink_db_postgres
|
2019-10-06 12:21:41 +03:00
|
|
|
- shlink_db_maria
|
2020-02-03 23:20:40 +03:00
|
|
|
- shlink_db_ms
|
2019-08-07 17:07:40 +03:00
|
|
|
- shlink_redis
|
2022-12-12 22:50:21 +03:00
|
|
|
- shlink_redis_acl
|
2020-03-14 21:47:22 +03:00
|
|
|
- shlink_mercure
|
2020-04-25 14:44:09 +03:00
|
|
|
- shlink_mercure_proxy
|
2021-12-11 18:19:38 +03:00
|
|
|
- shlink_rabbitmq
|
2023-06-04 13:40:10 +03:00
|
|
|
- shlink_matomo
|
2020-02-15 22:28:32 +03:00
|
|
|
environment:
|
2024-10-16 09:55:38 +03:00
|
|
|
DEFAULT_DOMAIN: localhost:8000
|
|
|
|
env_file:
|
|
|
|
- path: shlink-dev.env
|
|
|
|
required: false
|
2021-12-05 17:16:41 +03:00
|
|
|
extra_hosts:
|
|
|
|
- 'host.docker.internal:host-gateway'
|
2017-01-20 00:56:45 +03:00
|
|
|
|
2022-08-21 14:19:27 +03:00
|
|
|
shlink_roadrunner:
|
|
|
|
container_name: shlink_roadrunner
|
|
|
|
build:
|
|
|
|
context: .
|
|
|
|
dockerfile: ./data/infra/roadrunner.Dockerfile
|
|
|
|
ports:
|
|
|
|
- "8800:8080"
|
|
|
|
volumes:
|
|
|
|
- ./:/home/shlink
|
|
|
|
- ./data/infra/php.ini:/usr/local/etc/php/php.ini
|
|
|
|
links:
|
|
|
|
- shlink_db_mysql
|
|
|
|
- shlink_db_postgres
|
|
|
|
- shlink_db_maria
|
|
|
|
- shlink_db_ms
|
|
|
|
- shlink_redis
|
2022-12-12 22:50:21 +03:00
|
|
|
- shlink_redis_acl
|
2022-08-21 14:19:27 +03:00
|
|
|
- shlink_mercure
|
|
|
|
- shlink_mercure_proxy
|
|
|
|
- shlink_rabbitmq
|
2023-06-04 13:40:10 +03:00
|
|
|
- shlink_matomo
|
2022-08-21 14:19:27 +03:00
|
|
|
extra_hosts:
|
|
|
|
- 'host.docker.internal:host-gateway'
|
|
|
|
|
2021-12-11 12:25:58 +03:00
|
|
|
shlink_db_mysql:
|
|
|
|
container_name: shlink_db_mysql
|
2023-01-05 20:50:49 +03:00
|
|
|
image: mysql:8.0
|
2017-01-20 00:56:45 +03:00
|
|
|
ports:
|
|
|
|
- "3307:3306"
|
|
|
|
volumes:
|
|
|
|
- ./:/home/shlink/www
|
|
|
|
- ./data/infra/database:/var/lib/mysql
|
|
|
|
environment:
|
|
|
|
MYSQL_ROOT_PASSWORD: root
|
|
|
|
MYSQL_DATABASE: shlink
|
2019-03-05 15:39:45 +03:00
|
|
|
|
|
|
|
shlink_db_postgres:
|
|
|
|
container_name: shlink_db_postgres
|
2024-07-29 20:39:31 +03:00
|
|
|
image: postgres:16.3-alpine
|
2019-03-05 15:39:45 +03:00
|
|
|
ports:
|
2024-03-03 00:44:22 +03:00
|
|
|
- "5434:5432"
|
2019-03-05 15:39:45 +03:00
|
|
|
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
|
2019-08-07 17:07:40 +03:00
|
|
|
|
2019-10-06 12:21:41 +03:00
|
|
|
shlink_db_maria:
|
|
|
|
container_name: shlink_db_maria
|
2022-01-21 21:58:56 +03:00
|
|
|
image: mariadb:10.7
|
2019-10-06 12:21:41 +03:00
|
|
|
ports:
|
|
|
|
- "3308:3306"
|
|
|
|
volumes:
|
|
|
|
- ./:/home/shlink/www
|
|
|
|
- ./data/infra/database_maria:/var/lib/mysql
|
|
|
|
environment:
|
|
|
|
MYSQL_ROOT_PASSWORD: root
|
|
|
|
MYSQL_DATABASE: shlink
|
2019-10-20 10:53:11 +03:00
|
|
|
MYSQL_INITDB_SKIP_TZINFO: 1
|
2019-10-06 12:21:41 +03:00
|
|
|
|
2020-02-03 23:20:40 +03:00
|
|
|
shlink_db_ms:
|
|
|
|
container_name: shlink_db_ms
|
2024-05-21 19:09:45 +03:00
|
|
|
image: mcr.microsoft.com/mssql/server:2022-latest
|
2020-02-03 23:20:40 +03:00
|
|
|
ports:
|
|
|
|
- "1433:1433"
|
|
|
|
environment:
|
|
|
|
ACCEPT_EULA: Y
|
|
|
|
SA_PASSWORD: "Passw0rd!"
|
|
|
|
|
2019-08-07 17:07:40 +03:00
|
|
|
shlink_redis:
|
|
|
|
container_name: shlink_redis
|
2022-12-12 22:50:21 +03:00
|
|
|
image: redis:6.2-alpine
|
2019-08-07 17:07:40 +03:00
|
|
|
ports:
|
|
|
|
- "6380:6379"
|
2020-03-14 21:47:22 +03:00
|
|
|
|
2022-12-12 22:50:21 +03:00
|
|
|
shlink_redis_acl:
|
|
|
|
container_name: shlink_redis_acl
|
|
|
|
image: redis:6.2-alpine
|
|
|
|
command: ["redis-server", "/usr/local/etc/redis/redis.conf"]
|
|
|
|
ports:
|
|
|
|
- "6382:6379"
|
|
|
|
volumes:
|
|
|
|
- ./data/infra/redis/redis-acl.conf:/usr/local/etc/redis/redis.conf
|
|
|
|
|
2020-04-25 14:44:09 +03:00
|
|
|
shlink_mercure_proxy:
|
|
|
|
container_name: shlink_mercure_proxy
|
2023-09-17 12:59:23 +03:00
|
|
|
image: nginx:1.25-alpine
|
2020-04-25 14:44:09 +03:00
|
|
|
ports:
|
2024-02-28 22:24:16 +03:00
|
|
|
- "8002:80"
|
2020-04-25 14:44:09 +03:00
|
|
|
volumes:
|
|
|
|
- ./:/home/shlink/www
|
|
|
|
- ./data/infra/mercure_proxy_vhost.conf:/etc/nginx/conf.d/default.conf
|
|
|
|
links:
|
|
|
|
- shlink_mercure
|
|
|
|
|
2020-03-14 21:47:22 +03:00
|
|
|
shlink_mercure:
|
|
|
|
container_name: shlink_mercure
|
2023-09-17 12:59:23 +03:00
|
|
|
image: dunglas/mercure:v0.15
|
2020-03-14 21:47:22 +03:00
|
|
|
ports:
|
|
|
|
- "3080:80"
|
|
|
|
environment:
|
2021-10-31 21:42:40 +03:00
|
|
|
SERVER_NAME: ":80"
|
2022-08-21 14:19:27 +03:00
|
|
|
MERCURE_PUBLISHER_JWT_KEY: mercure_jwt_key_long_enough_to_avoid_error
|
|
|
|
MERCURE_SUBSCRIBER_JWT_KEY: mercure_jwt_key_long_enough_to_avoid_error
|
2024-04-29 09:52:18 +03:00
|
|
|
MERCURE_EXTRA_DIRECTIVES: "cors_origins https://app.shlink.io http://localhost:3000 http://127.0.0.1:3000 http://localhost:3002 http://127.0.0.1:3002 http://localhost:3005 http://127.0.0.1:3005"
|
2021-12-11 18:19:38 +03:00
|
|
|
|
|
|
|
shlink_rabbitmq:
|
|
|
|
container_name: shlink_rabbitmq
|
2023-09-17 12:59:23 +03:00
|
|
|
image: rabbitmq:3.11-management-alpine
|
2021-12-11 18:19:38 +03:00
|
|
|
ports:
|
2024-03-03 00:44:22 +03:00
|
|
|
- "15673:15672"
|
|
|
|
- "5673:5672"
|
2021-12-11 18:19:38 +03:00
|
|
|
environment:
|
|
|
|
RABBITMQ_DEFAULT_USER: "rabbit"
|
|
|
|
RABBITMQ_DEFAULT_PASS: "rabbit"
|
2023-09-17 12:59:23 +03:00
|
|
|
|
|
|
|
shlink_swagger_ui:
|
|
|
|
container_name: shlink_swagger_ui
|
2024-02-10 19:51:42 +03:00
|
|
|
image: swaggerapi/swagger-ui:v5.11.3
|
2023-09-17 12:59:23 +03:00
|
|
|
ports:
|
|
|
|
- "8005:8080"
|
|
|
|
volumes:
|
|
|
|
- ./docs/swagger:/app
|
2023-06-04 13:40:10 +03:00
|
|
|
|
|
|
|
shlink_matomo:
|
|
|
|
container_name: shlink_matomo
|
2024-03-31 14:51:03 +03:00
|
|
|
image: matomo:5.0-apache
|
2023-06-04 13:40:10 +03:00
|
|
|
ports:
|
|
|
|
- "8003:80"
|
|
|
|
volumes:
|
2023-11-22 20:30:03 +03:00
|
|
|
# Matomo does not persist port in trusted hosts. This volume is needed to edit config afterward
|
2023-06-04 13:40:10 +03:00
|
|
|
# https://github.com/matomo-org/matomo/issues/9549
|
|
|
|
- ./data/infra/matomo:/var/www/html
|
|
|
|
links:
|
|
|
|
- shlink_db_mysql
|
|
|
|
environment:
|
|
|
|
MATOMO_DATABASE_HOST: "shlink_db_mysql"
|
|
|
|
MATOMO_DATABASE_ADAPTER: "mysql"
|
|
|
|
MATOMO_DATABASE_DBNAME: "matomo"
|
|
|
|
MATOMO_DATABASE_USERNAME: "root"
|
|
|
|
MATOMO_DATABASE_PASSWORD: "root"
|