100 lines
No EOL
1.9 KiB
YAML
100 lines
No EOL
1.9 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
|
|
|
|
MONGO: mongodb://mongo:27017/esmBot
|
|
# 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
|
|
- mongo
|
|
|
|
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
|
|
|
|
mongo:
|
|
container_name: mongo
|
|
image: mongo:latest
|
|
restart: unless-stopped
|
|
volumes:
|
|
- mongo-data:/data/db
|
|
networks:
|
|
esmbot:
|
|
ipv4_address: 172.20.0.6
|
|
|
|
mongo-express:
|
|
image: mongo-express
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- mongo
|
|
ports:
|
|
- 8888:8081
|
|
networks:
|
|
esmbot:
|
|
ipv4_address: 172.20.0.7
|
|
|
|
volumes:
|
|
bot-help:
|
|
bot-temp:
|
|
mongo-data:
|
|
|
|
networks:
|
|
esmbot:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: 172.20.0.0/24 |