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 links: - lavalink depends_on: - api - 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 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.4 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.5 adminer: image: adminer restart: unless-stopped depends_on: - postgres ports: - 8888:8080 networks: esmbot: ipv4_address: 172.20.0.6 volumes: bot-help: bot-temp: pg-data: networks: esmbot: driver: bridge ipam: config: - subnet: 172.20.0.0/24