121 lines
3 KiB
YAML
Executable file
121 lines
3 KiB
YAML
Executable file
version: "3.9"
|
|
|
|
services:
|
|
nginx:
|
|
image: nginx:latest
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
|
|
- ./certs/:/etc/nginx/certs/:ro
|
|
restart: always
|
|
depends_on:
|
|
- wordpress
|
|
- mobilizon
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- wp.lan
|
|
- mz.lan
|
|
|
|
postgres:
|
|
container_name: mobilizon_db
|
|
restart: unless-stopped
|
|
image: postgis/postgis
|
|
environment:
|
|
- POSTGRES_USER=mobilizon
|
|
- POSTGRES_PASSWORD=mobilizon
|
|
- POSTGRES_DB=mobilizon
|
|
- POSTGRES_PORT=5432
|
|
volumes:
|
|
- mobilizon_database_data:/var/lib/postgresql/data
|
|
ports:
|
|
- "5432:5432"
|
|
|
|
mobilizon:
|
|
container_name: mobilizon
|
|
restart: unless-stopped
|
|
build:
|
|
context: ./mobilizon/mobilizon
|
|
dockerfile: Dockerfile
|
|
volumes:
|
|
- "./mobilizon/mobilizon:/app"
|
|
- "./mobilizon/dev.exs:/app/config/dev.exs"
|
|
- "./certs/lan-key.pem:/app/priv/server.key:ro"
|
|
- "./certs/lan.pem:/app/priv/server.pem:ro"
|
|
- "/etc/ssl/certs/ca-certificates.crt:/app/priv/ca-bundle.crt:ro"
|
|
depends_on:
|
|
- postgres
|
|
environment:
|
|
MIX_ENV: "dev"
|
|
DOCKER: "true"
|
|
MOBILIZON_INSTANCE_NAME: My Local Mobilizon
|
|
MOBILIZON_INSTANCE_HOST: mz.lan
|
|
MOBILIZON_INSTANCE_HOST_PORT: 443
|
|
MOBILIZON_INSTANCE_PORT: 443
|
|
MOBILIZON_INSTANCE_EMAIL: noreply@mobilizon.me
|
|
MOBILIZON_INSTANCE_REGISTRATIONS_OPEN: "true"
|
|
MOBILIZON_DATABASE_PASSWORD: mobilizon
|
|
MOBILIZON_DATABASE_USERNAME: mobilizon
|
|
MOBILIZON_DATABASE_DBNAME: mobilizon
|
|
MOBILIZON_DATABASE_HOST: postgres
|
|
MOBILIZON_DATABASE_PORT: 5432
|
|
VITE_HOST: 0.0.0.0
|
|
command: sh -c "mix phx.server"
|
|
expose:
|
|
- "443"
|
|
- "4000"
|
|
ports:
|
|
- "5173:5173"
|
|
|
|
wordpress:
|
|
build:
|
|
context: ./wordpress
|
|
dockerfile: Dockerfile
|
|
volumes:
|
|
- ./wordpress/wordpress:/var/www/html
|
|
- /etc/ssl/certs/ca-certificates.crt:/var/www/html/wp-includes/certificates/ca-bundle.crt:ro
|
|
|
|
environment:
|
|
- DOCKER_DEV_DOMAIN=wp.lan
|
|
- WORDPRESS_DB_NAME=wordpress
|
|
- WORDPRESS_TABLE_PREFIX=wp_
|
|
- WORDPRESS_DB_HOST=mariadb
|
|
- WORDPRESS_DB_USER=root
|
|
- WORDPRESS_DB_PASSWORD=password
|
|
- WORDPRESS_DEBUG=True
|
|
depends_on:
|
|
- mariadb
|
|
- phpmyadmin
|
|
- mobilizon
|
|
restart: always
|
|
expose:
|
|
- "80"
|
|
- "9003"
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
|
|
mariadb:
|
|
image: mariadb:latest
|
|
volumes:
|
|
- wordpress_database_data:/var/lib/mysql
|
|
environment:
|
|
- MYSQL_ROOT_PASSWORD=password
|
|
- MYSQL_USER=root
|
|
- MYSQL_PASSWORD=password
|
|
- MYSQL_DATABASE=wordpress
|
|
restart: always
|
|
|
|
phpmyadmin:
|
|
depends_on:
|
|
- mariadb
|
|
image: phpmyadmin/phpmyadmin:latest
|
|
restart: always
|
|
environment:
|
|
PMA_HOST: mariadb
|
|
MYSQL_ROOT_PASSWORD: password
|
|
|
|
volumes:
|
|
wordpress_database_data:
|
|
mobilizon_database_data:
|