--- version: "3.8" services: db: build: context: . dockerfile: mariadb.Dockerfile env_file: - ./.env volumes: - db:/var/lib/mysql ports: - "13306:3306" healthcheck: test: out=$$(mysqladmin ping -h localhost -P 3306 -u root -p$$MYSQL_ROOT_PASSWORD 2>&1); echo $$out | grep 'mysqld is alive' || { echo $$out ; exit 1 ; } smtp: build: context: . dockerfile: smtp.Dockerfile volumes: - maildir:/home/catchall/Maildir application: build: context: . dockerfile: application.Dockerfile env_file: - ./.env ports: - "8080:80" - "8443:443" depends_on: - db - smtp volumes: - ./cacert-software:/www volumes: db: { } maildir: { }