Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,9 @@ target/

.env

postgis-data
postgres-data
logs
tagbase_server/tagbase_server/coverage.xml
rabbitmq
dbbackups
82 changes: 54 additions & 28 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,11 @@ services:
"docker_compose_diagram.icon": "docker"
links:
- postgis
networks:
- internal-network
restart: unless-stopped
volumes:
- ./dbbackups:/backups
restart: on-failure
docker-cron:
build:
context: ./services/docker-cron
Expand Down Expand Up @@ -80,36 +82,12 @@ services:
networks:
- internal-network
restart: unless-stopped
# postgres:
# build:
# context: ./services/postgres
# environment:
# - PGDATA=/var/lib/postgresql/data/pgdata
# - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
# expose:
# - ${POSTGRES_PORT}
# healthcheck:
# test: ["CMD-SHELL", "pg_isready -d tagbase -h postgres -U tagbase"]
# interval: 15s
# timeout: 5s
# retries: 5
# start_period: 15s
# hostname: postgres
# labels:
# "docker_compose_diagram.cluster": "Internal Network"
# "docker_compose_diagram.description": "Tagbase PostgreSQL server"
# networks:
# - internal-network
# ports:
# - ${POSTGRES_PORT}:${POSTGRES_PORT}
# restart: unless-stopped
# volumes:
# - ./postgres-data:/var/lib/postgresql/data
postgis:
environment:
- ALLOW_IP_RANGE=0.0.0.0/0
- EXTRA_CONF=log_destination = stderr\nlogging_collector = on
- PASSWORD_AUTHENTICATION=md5
- POSTGRES_DB=tagbase
#- POSTGRES_DB=tagbase
- POSTGRES_PASS=${POSTGRES_PASSWORD}
- POSTGRES_USER=tagbase
- POSTGRES_MULTIPLE_EXTENSIONS=postgis,hstore,postgis_topology,postgis_raster,pgrouting
Expand All @@ -135,6 +113,53 @@ services:
- ./dbbackups:/backups
- ./postgis-data:/var/lib/postgresql
- ./services/postgis/tagbase_schema.sql:/docker-entrypoint-initdb.d/tagbase_schema.sql
rabbitmq:
depends_on:
postgis:
condition: service_healthy
healthcheck:
test: "set -eo pipefail rabbitmqctl eval '{ true, rabbit_app_booted_and_running } = { rabbit:is_booted(node()), rabbit_app_booted_and_running }, { [], no_alarms } = { rabbit:alarms(), no_alarms }, [] /= rabbit_networking:active_listeners(), rabbitmq_node_is_healthy.' || exit 1"
interval: 15s
timeout: 5s
retries: 5
start_period: 15s
hostname: rabbitmq
image: rabbitmq:3-management-alpine
labels:
"docker_compose_diagram.cluster": "Internal Network"
"docker_compose_diagram.description": "rabbitmq messaging service"
"docker_compose_diagram.icon": "rabbitmq"
networks:
- internal-network
ports:
- 5672:5672
- 15672:15672
restart: unless-stopped
volumes:
- ./rabbitmq/data/:/var/lib/rabbitmq/
- ./logs/rabbitmq/:/var/log/rabbitmq/
rabbitmq_subscriber:
build:
context: ./services/subscriber
depends_on:
rabbitmq:
condition: service_healthy
environment:
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_PORT=${POSTGRES_PORT}
hostname: rabbitmq_subscriber
labels:
"docker_compose_diagram.cluster": "Internal Network"
"docker_compose_diagram.description": "rabbitmq subscriber service"
"docker_compose_diagram.icon": "rabbitmq"
links:
- postgis
- rabbitmq
networks:
- internal-network
restart: unless-stopped
volumes:
- ./logs/rabbitmq_subscriber:/usr/src/app/logs/rabbitmq_subscriber
slack_docker:
environment:
- webhook=${webhook}
Expand Down Expand Up @@ -166,10 +191,11 @@ services:
"docker_compose_diagram.icon": "flask"
links:
- postgis
- rabbitmq
networks:
- internal-network
restart: unless-stopped
volumes:
- ./logs:/usr/src/app/logs
- ./logs/tagbase_server:/usr/src/app/logs/tagbase_server
networks:
internal-network:
Loading