version: "2" services: roundcube: build: ./ container_name: roundcube #restart: always depends_on: - roundcubedb links: - roundcubedb ports: - 9000:9000 volumes: - /srv/roundcube/html:/var/www/html environment: - ROUNDCUBEMAIL_DB_TYPE=pgsql - ROUNDCUBEMAIL_DB_HOST=roundcubedb # same as pgsql container name - ROUNDCUBEMAIL_DB_NAME=roundcube # same as pgsql POSTGRES_DB env name - ROUNDCUBEMAIL_DB_USER=roundcube # same as pgsql POSTGRES_USER env name - ROUNDCUBEMAIL_DB_PASSWORD=roundcube # same as pgsql POSTGRES_PASSWORD env name roundcubedb: image: postgres:latest container_name: roundcubedb restart: always ports: - 5432:5432 volumes: - /srv/roundcube/db:/var/lib/postgresql/data environment: - POSTGRES_DB=roundcube - POSTGRES_USER=roundcube - POSTGRES_PASSWORD=roundcube roundcubenginx: image: nginx:latest container_name: roundcubenginx restart: always ports: - 80:80 # If you need SSL connection # - '443:443' depends_on: - roundcube links: - roundcube volumes: - /srv/roundcube/html:/var/www/html # TODO Provide a custom nginx conf #- ./nginx.conf:/etc/nginx/nginx.conf:ro # If you need SSL connection, you can provide your own certificates # - ./certs:/etc/letsencrypt # - ./certs-data:/data/letsencrypt environment: - NGINX_HOST=localhost # set your local domain or your live domain # - NGINX_CGI=roundcube:9000 # same as roundcube container name