-
François Agneray authoredFrançois Agneray authored
docker-compose.yml 5.05 KiB
version: '3'
services:
client:
build:
context: ./client
dockerfile: ./Dockerfile.dev
ports:
- 4200:4200
working_dir: /project
volumes:
- ./client:/project
command: ng serve --host=0.0.0.0 --disable-host-check --port 4200
server:
build:
context: ./server
dockerfile: ./Dockerfile.dev
environment:
docker: "true"
DISPLAY_ERROR_DETAILS: "true"
DATABASE_DEV_MODE: 1
DATABASE_CO_DRIVER: "pdo_pgsql"
DATABASE_CO_HOST: "db"
DATABASE_CO_PORT: 5432
DATABASE_CO_DBNAME: "anis_metamodel"
DATABASE_CO_USER: "postgres"
DATABASE_CO_PASSWORD: "postgres"
DATA_PATH: "/data"
ARCHIVE_FOLDER: "/ARCHIVE"
LOGGER_NAME: "anis-metamodel"
LOGGER_PATH: "php://stderr"
LOGGER_LEVEL: "debug"
SERVICES_URL: "http://localhost:5000"
BASE_HREF: "/"
SSO_AUTH_URL: "http://localhost:8180"
SSO_REALM: "anis"
SSO_CLIENT_ID: "anis-client"
TOKEN_ENABLED: 0
TOKEN_JWKS_URL: "http://keycloak:8180/realms/anis/protocol/openid-connect/certs"
TOKEN_ADMIN_ROLES: anis_admin,superuser
RMQ_HOST: rmq
RMQ_PORT: 5672
RMQ_USER: admin
RMQ_PASSWORD: admin
MATOMO_ENABLED: 0
MATOMO_SITE_ID: 1
MATOMO_TRACKER_URL: http://localhost:8888
ports:
- 8080:80
volumes:
- ./server:/project
- ./conf-dev/dev-php.ini:/usr/local/etc/php/conf.d/dev-php.ini
- ./conf-dev/init-keycloak.sh:/mnt/init-keycloak.sh
- ./conf-dev/create-db.sh:/mnt/create-db.sh
- ./data:/data
services:
image: python:3.8
environment:
PYTHONPATH: "/project/src"
FLASK_ENV: development
DATA_PATH: /data
SERVER_URL: http://server
working_dir: /project
ports:
- 5000:5000
volumes:
- ./services:/project
- ./data:/data
command: /bin/bash -c "source /project/venv/bin/activate && exec python src/anis_services/app.py"
tasks:
image: python:3.8
# stdin_open: true
# tty: true
# command: sleep infinity
environment:
PYTHONPATH: "/project/src"
DATA_PATH: /data
ARCHIVE_FOLDER: "/ARCHIVE"
SERVER_URL: http://server
RMQ_HOST: rmq
RMQ_PORT: 5672
RMQ_USER: admin
RMQ_PASSWORD: admin
working_dir: /project
volumes:
- ./tasks:/project
- ./data:/data
command: /bin/bash -c "source /project/venv/bin/activate && exec python src/anis_tasks/app.py"
keycloak:
image: bitnami/keycloak:18
environment:
KEYCLOAK_DATABASE_HOST: db
KEYCLOAK_DATABASE_PORT: 5432
KEYCLOAK_DATABASE_NAME: keycloakdb
KEYCLOAK_DATABASE_USER: keycloak
KEYCLOAK_DATABASE_PASSWORD: keycloak
KEYCLOAK_DATABASE_SCHEMA: public
KEYCLOAK_ADMIN_USER: admin
KEYCLOAK_ADMIN_PASSWORD: admin
KEYCLOAK_BIND_ADDRESS: 0.0.0.0
KEYCLOAK_HTTP_PORT: 8180
KEYCLOAK_EXTRA_ARGS: -Dkeycloak.import=/tmp/keycloak-anis-realm.json
ports:
- 8180:8180
volumes:
- ./conf-dev/keycloak-anis-realm.json:/tmp/keycloak-anis-realm.json
db:
image: postgres:15
environment:
POSTGRES_PASSWORD: "postgres"
volumes:
- pgdata:/var/lib/postgresql/data
- ./conf-dev/data_test.sql:/sql/data_test.sql
- ./conf-dev/init-postgres.sh:/docker-entrypoint-initdb.d/init-postgres.sh
rmq:
image: rabbitmq:3-management
environment:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: admin
ports:
- 15672:15672
mailer:
image: djfarrelly/maildev
ports:
- 1080:80
mariadb:
image: mariadb
command: --max-allowed-packet=64MB
volumes:
- mariadata:/var/lib/mysql
- ./conf-dev/matomo.sql:/docker-entrypoint-initdb.d/matomo.sql
environment:
- MARIADB_ROOT_PASSWORD=maria
- MARIADB_DATABASE=matomodb
- MARIADB_USER=matomo
- MARIADB_PASSWORD=matomo
matomo:
image: matomo
volumes:
- ./conf-dev/matomo-config.ini.php:/var/www/html/config/config.ini.php
- matomo:/var/www/html
environment:
- MATOMO_DATABASE_HOST=mariadb
- MATOMO_DATABASE_ADAPTER=mysql
- MATOMO_DATABASE_TABLES_PREFIX=matomo_
- MATOMO_DATABASE_USERNAME=matomo
- MATOMO_DATABASE_PASSWORD=matomo
- MATOMO_DATABASE_DBNAME=matomodb
ports:
- 8888:80
volumes:
pgdata:
mariadata:
matomo: