mrmBot-Matrix/docker-compose.yml

104 lines
No EOL
2 KiB
YAML

version: '3.0'
services:
bot:
build:
context: .
dockerfile: Dockerfile.bot
image: esmbot
restart: unless-stopped
volumes:
- ./logs:/home/esmBot/.internal/logs
- bot-help:/home/esmBot/help
- bot-temp:/home/esmBot/temp
env_file:
- .env
environment:
OUTPUT: /home/esmBot/help
TEMPDIR: /home/esmBot/temp
# chrome remote debugger can only be accessed over localhost or IP
CHROME: 172.20.0.4:9222
links:
- lavalink
- chrome
depends_on:
- api
- chrome
- lavalink
- postgres
networks:
esmbot:
ipv4_address: 172.20.0.2
api:
container_name: api
build:
context: .
dockerfile: Dockerfile.api
image: esmbot-api
restart: unless-stopped
networks:
esmbot:
ipv4_address: 172.20.0.3
chrome:
container_name: chrome
build:
context: ./utils/screenshot
image: headless-chrome-alpine
restart: unless-stopped
networks:
esmbot:
ipv4_address: 172.20.0.4
lavalink:
container_name: lavalink
image: fredboat/lavalink:dev
restart: unless-stopped
volumes:
- ./application.yml:/opt/Lavalink/application.yml
- ./assets:/opt/Lavalink/assets
networks:
esmbot:
ipv4_address: 172.20.0.5
postgres:
container_name: postgres
image: postgres:13-alpine
restart: unless-stopped
volumes:
- pg-data:/var/lib/postgresql/data
- ./utils/psqlinit.sh:/docker-entrypoint-initdb.d/psqlinit.sh
environment:
POSTGRES_PASSWORD: verycoolpass100
POSTGRES_USER: esmbot
POSTGRES_DB: esmbot
networks:
esmbot:
ipv4_address: 172.20.0.6
adminer:
image: adminer
restart: unless-stopped
depends_on:
- postgres
ports:
- 8888:8080
networks:
esmbot:
ipv4_address: 172.20.0.7
volumes:
bot-help:
bot-temp:
#mongo-data:
pg-data:
networks:
esmbot:
driver: bridge
ipam:
config:
- subnet: 172.20.0.0/24