2018-05-06 21:08:49 +02:00
|
|
|
version: '3'
|
|
|
|
|
services:
|
2025-02-23 08:41:04 +01:00
|
|
|
inventaire:
|
|
|
|
|
build:
|
|
|
|
|
context: ./.
|
|
|
|
|
dockerfile: Dockerfile.inventaire
|
|
|
|
|
volumes:
|
|
|
|
|
- ./inventaire:${PROJECT_ROOT}
|
|
|
|
|
working_dir: ${PROJECT_ROOT}
|
|
|
|
|
environment:
|
|
|
|
|
NODE_ENV: 'production'
|
2024-12-25 13:09:48 +01:00
|
|
|
NODE_APP_INSTANCE: 'federated'
|
2025-02-23 08:41:04 +01:00
|
|
|
COUCHDB_USER: ${COUCHDB_USER}
|
|
|
|
|
COUCHDB_PASSWORD: ${COUCHDB_PASSWORD}
|
|
|
|
|
PUBLIC_HOSTNAME: ${PUBLIC_HOSTNAME}
|
|
|
|
|
depends_on:
|
|
|
|
|
- elasticsearch
|
|
|
|
|
tty: true
|
|
|
|
|
logging:
|
|
|
|
|
options:
|
|
|
|
|
max-size: "10m"
|
|
|
|
|
max-file: "3"
|
2024-12-25 13:09:48 +01:00
|
|
|
restart: "always"
|
2021-08-25 15:46:12 +02:00
|
|
|
couchdb:
|
2024-11-21 22:17:54 +01:00
|
|
|
image: couchdb:3.4.2
|
2025-02-23 08:41:04 +01:00
|
|
|
environment:
|
|
|
|
|
COUCHDB_USER: ${COUCHDB_USER}
|
|
|
|
|
COUCHDB_PASSWORD: ${COUCHDB_PASSWORD}
|
2024-12-25 13:09:48 +01:00
|
|
|
volumes:
|
|
|
|
|
- 'couchdb:/opt/couchdb/data'
|
|
|
|
|
- './configs:/opt/couchdb/etc/local.d'
|
2019-04-15 17:19:30 +02:00
|
|
|
tty: true
|
2024-12-25 13:09:48 +01:00
|
|
|
restart: "always"
|
2018-05-09 18:19:47 +02:00
|
|
|
elasticsearch:
|
2022-01-13 20:31:59 +01:00
|
|
|
image: elasticsearch:7.16.2
|
2018-05-09 18:19:47 +02:00
|
|
|
environment:
|
2024-12-25 13:09:48 +01:00
|
|
|
- 'http.host=elasticsearch'
|
|
|
|
|
- 'transport.host=elasticsearch'
|
2023-04-28 14:05:45 +02:00
|
|
|
# See https://www.elastic.co/guide/en/elasticsearch/reference/7.16/docker.html
|
2020-09-24 17:34:52 +02:00
|
|
|
- 'discovery.type=single-node'
|
2025-02-23 08:41:04 +01:00
|
|
|
# Limit memory usage to 1Go,
|
|
|
|
|
# See https://www.elastic.co/guide/en/elasticsearch/reference/current/advanced-configuration.html
|
2022-02-12 17:50:11 +01:00
|
|
|
- 'ES_JAVA_OPTS=-Xms1g -Xmx1g'
|
2024-12-25 10:32:11 +01:00
|
|
|
volumes:
|
|
|
|
|
- 'elasticsearch:/usr/share/elasticsearch/data'
|
2024-12-25 13:09:48 +01:00
|
|
|
restart: "always"
|
|
|
|
|
nginx:
|
|
|
|
|
build:
|
|
|
|
|
context: ./nginx
|
|
|
|
|
dockerfile: Dockerfile.nginx
|
|
|
|
|
ports:
|
|
|
|
|
- "80:80"
|
|
|
|
|
- "443:443"
|
|
|
|
|
volumes:
|
|
|
|
|
- ./nginx/templates:/etc/nginx/templates/
|
|
|
|
|
- ./nginx/snippets:/etc/nginx/snippets
|
|
|
|
|
- ./inventaire:${PROJECT_ROOT}
|
|
|
|
|
- certbot-www:/var/www/certbot
|
|
|
|
|
- ./certbot/conf:/etc/letsencrypt
|
|
|
|
|
environment:
|
|
|
|
|
PROJECT_ROOT: ${PROJECT_ROOT}
|
|
|
|
|
PUBLIC_HOSTNAME: ${PUBLIC_HOSTNAME}
|
|
|
|
|
INVENTAIRE_PORT: ${INVENTAIRE_PORT}
|
|
|
|
|
depends_on:
|
|
|
|
|
- inventaire
|
|
|
|
|
restart: "always"
|
|
|
|
|
certbot:
|
|
|
|
|
image: certbot/certbot:latest
|
|
|
|
|
volumes:
|
|
|
|
|
- ./certbot/conf:/etc/letsencrypt
|
|
|
|
|
- certbot-www:/var/www/certbot
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
entrypoint: /bin/sh -c "trap exit TERM; while :; do certbot renew --webroot -w /var/www/certbot; sleep 12h & wait $${!}; done;"
|
|
|
|
|
depends_on:
|
|
|
|
|
- nginx
|
|
|
|
|
|
2021-02-08 12:53:00 +01:00
|
|
|
volumes:
|
|
|
|
|
couchdb:
|
2025-02-23 08:41:04 +01:00
|
|
|
elasticsearch:
|
2024-12-25 13:09:48 +01:00
|
|
|
certbot-www:
|