bonfire-app/docker-compose.yml

120 lines
2.6 KiB
YAML
Executable File
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# A Dockerfile for development/testing
version: "3.5"
services:
web:
container_name: "bonfire_web"
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "20"
build:
context: .
dockerfile: "Dockerfile.dev"
args:
- ELIXIR_DOCKER_IMAGE=${ELIXIR_DOCKER_IMAGE}
ports:
- "4000:${SERVER_PORT}"
- "${SERVER_PORT}:${SERVER_PORT}"
env_file:
- config/dev/.env
environment:
- POSTGRES_HOST=db
- SEARCH_MEILI_INSTANCE=http://search:7700
# - GRAPH_DB_URL=bolt://graph:7687 # commented temporarily
depends_on:
- db
# - condition: service_healthy
# - search
# - graph
volumes:
# - /etc/passwd:/etc/passwd:ro
- type: bind
source: .
target: /opt/app
# do not mount the following:
# - /opt/app/_build
# - /opt/app/assets/node_modules
- /opt/app/data/postgres
- /opt/app/data/search
stdin_open: true # like docker run -i
tty: true # like docker run -t
user: $UID:$GID
db:
image: ${DB_DOCKER_IMAGE}
# volumes:
# - ./data/postgres/dev:/var/lib/postgresql/data:z
# - /etc/passwd:/etc/passwd:ro
ports:
- "5432:5432"
env_file:
- config/dev/.env
# user: $UID:$GID
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 10s
timeout: 5s
retries: 5
search:
profiles:
- search
image: getmeili/meilisearch:latest
ports:
- "7700:7700"
# volumes:
# - "./data/search/dev:/data.ms"
# - /etc/passwd:/etc/passwd:ro
env_file:
- config/dev/.env
# user: $UID:$GID
proxy:
profiles:
- proxy
links:
- web
image: "caddy:alpine"
restart: always
ports:
- "80:80"
- "443:443"
- "443:443/udp"
env_file:
- config/dev/.env
volumes:
- caddy_data:/data
- caddy_config:/config
- type: bind
source: ${PROXY_CADDYFILE_PATH}
target: /etc/caddy/Caddyfile
read_only: true
- type: bind
source: ./data/uploads
target: /frontend/uploads
graph:
profiles:
- graph
image: memgraph/memgraph-platform
entrypoint: ["/usr/bin/supervisord"]
ports:
- "7687:7687"
- "3000:3000"
- "7444:7444"
volumes:
- mg_lib:/var/lib/memgraph
- mg_log:/var/log/memgraph
- mg_etc:/etc/memgraph
volumes:
caddy_data:
# external: true
caddy_config:
mg_lib:
mg_log:
mg_etc:
networks:
default:
external: ${DOCKER_EXT_NETWORK_BOOL}
name: ${DOCKER_EXT_NETWORK}