2020-06-02 00:57:20 +02:00
|
|
|
version: "3.7"
|
|
|
|
|
|
|
|
networks:
|
|
|
|
net:
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
pgdata:
|
|
|
|
|
|
|
|
x-op-service-default: &service_default
|
2020-06-08 23:17:16 +02:00
|
|
|
restart: always # unless-stopped
|
2020-06-02 00:57:20 +02:00
|
|
|
init: true
|
|
|
|
|
|
|
|
services:
|
2020-06-03 18:53:33 +02:00
|
|
|
ntpd:
|
|
|
|
<<: *service_default
|
2020-06-08 23:17:16 +02:00
|
|
|
build:
|
|
|
|
context: ./ntpd
|
2020-06-03 18:53:33 +02:00
|
|
|
image: daniviga/ntpd
|
|
|
|
networks:
|
|
|
|
- net
|
|
|
|
ports:
|
2020-06-15 22:47:55 +02:00
|
|
|
- "123:123/udp"
|
2020-06-03 18:53:33 +02:00
|
|
|
|
2020-06-02 00:57:20 +02:00
|
|
|
timescale:
|
|
|
|
<<: *service_default
|
|
|
|
image: timescale/timescaledb:latest-pg12
|
|
|
|
environment:
|
2020-06-02 23:20:34 +02:00
|
|
|
POSTGRES_USER: "freedcs"
|
2020-06-02 00:57:20 +02:00
|
|
|
POSTGRES_PASSWORD: "password"
|
|
|
|
volumes:
|
|
|
|
- "pgdata:/var/lib/postgresql/data"
|
|
|
|
networks:
|
|
|
|
- net
|
2020-06-08 23:17:16 +02:00
|
|
|
|
2020-06-02 23:20:34 +02:00
|
|
|
rabbitmq:
|
|
|
|
<<: *service_default
|
2020-06-08 23:17:16 +02:00
|
|
|
image: rabbitmq:3-management-alpine
|
|
|
|
# environment: # we use unauth access atm
|
|
|
|
# RABBITMQ_DEFAULT_VHOST: "freedcs"
|
|
|
|
# RABBITMQ_DEFAULT_USER: "freedcs"
|
|
|
|
# RABBITMQ_DEFAULT_PASS: "password"
|
|
|
|
volumes:
|
|
|
|
- ./rabbitmq/enabled_plugins:/etc/rabbitmq/enabled_plugins
|
2020-06-02 23:20:34 +02:00
|
|
|
networks:
|
|
|
|
- net
|
|
|
|
ports:
|
2020-06-08 23:17:16 +02:00
|
|
|
- "1883:1883"
|
|
|
|
- "15672:15672"
|
2020-06-03 19:26:35 +02:00
|
|
|
|
2020-06-15 22:47:55 +02:00
|
|
|
# edge:
|
|
|
|
# <<: *service_default
|
|
|
|
# image: docker:dind
|
|
|
|
# privileged: true
|
|
|
|
# environment:
|
|
|
|
# DOCKER_TLS_CERTDIR:
|
|
|
|
# networks:
|
|
|
|
# - net
|
|
|
|
# ports:
|
|
|
|
# - "127.0.0.1:22375:2375"
|
|
|
|
|
|
|
|
ingress:
|
|
|
|
image: traefik:v2.2
|
|
|
|
command: --api.insecure=true --providers.docker
|
|
|
|
ports:
|
|
|
|
- "8000:80"
|
|
|
|
- "8080:8080"
|
|
|
|
networks:
|
|
|
|
- net
|
|
|
|
volumes:
|
|
|
|
# So that Traefik can listen to the Docker events
|
|
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
|
|
|
|
freedcs:
|
2020-06-03 19:26:35 +02:00
|
|
|
<<: *service_default
|
2020-06-15 22:47:55 +02:00
|
|
|
build:
|
|
|
|
context: ..
|
|
|
|
dockerfile: ./docker/django/Dockerfile
|
|
|
|
image: daniviga/freedcs
|
|
|
|
volumes:
|
|
|
|
- "../freedcs:/srv/freedcs"
|
|
|
|
command: ["python3", "manage.py", "runserver", "0.0.0.0:8000"]
|
2020-06-03 19:26:35 +02:00
|
|
|
networks:
|
|
|
|
- net
|
2020-06-15 22:47:55 +02:00
|
|
|
depends_on:
|
|
|
|
- data-migration
|
|
|
|
- timescale
|
|
|
|
labels:
|
|
|
|
- "traefik.http.routers.freedcs.rule=PathPrefix(`/`)"
|
|
|
|
|
|
|
|
data-migration:
|
|
|
|
image: daniviga/freedcs
|
|
|
|
volumes:
|
|
|
|
- "../freedcs:/srv/freedcs"
|
|
|
|
command: ["python3", "manage.py", "migrate", "--noinput"]
|
|
|
|
networks:
|
|
|
|
- net
|
|
|
|
|
|
|
|
mqtt-to-db:
|
|
|
|
<<: *service_default
|
|
|
|
image: daniviga/freedcs
|
|
|
|
volumes:
|
|
|
|
- "../freedcs:/srv/freedcs"
|
|
|
|
command: ["python3", "manage.py", "mqtt-to-db"]
|
|
|
|
networks:
|
|
|
|
- net
|
|
|
|
depends_on:
|
|
|
|
- data-migration
|
|
|
|
- timescale
|
|
|
|
- rabbitmq
|