################################################################################ # Passbolt # make sure you use the $PREFIX from .env for project_name # docker-compose -p project_name up -d # # Version 1 ################################################################################ version: '3.3' volumes: pb-mariadb: pb-gpg: pb-images: networks: traefik_web: external: name: ${NETWORK_NAME} services: pb-mariadb: image: mariadb:${DB_V} restart: always volumes: - pb-mariadb:/var/lib/mysql networks: - ${NETWORK_NAME} environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_PASSWORD: ${MYSQL_PASSWORD} MYSQL_DATABASE: passbolt MYSQL_USER: passbolt # https://help.passbolt.com/hosting/install/ce/docker.html # once it's running you will have to manually create your first user: # as www-data user: ./cake passbolt register_user -u -f -l -r admin passbolt: image: passbolt/passbolt:${PASSBOLT_V} networks: - ${NETWORK_NAME} restart: always tty: true tmpfs: - /run depends_on: - ${PREFIX}_pb-mariadb_1 env_file: - passbolt.env command: ["/usr/bin/wait-for.sh", "-t", "0", "${PREFIX}_pb-mariadb_1:3306", "--", "/docker-entrypoint.sh"] volumes: - pb-gpg:/var/www/passbolt/config/gpg - pb-images:/var/www/passbolt/webroot/img/public - ./license:/var/www/passbolt/config/license labels: - "traefik.enable=true" - "traefik.http.routers.${PREFIX}_passbolt.rule=Host(`${DOMAIN_NAME}`)" - "traefik.http.routers.${PREFIX}_passbolt.entrypoints=websecure" - "traefik.http.routers.${PREFIX}_passbolt.tls.certresolver=letsencrypt" - "traefik.http.services.${PREFIX}_passbolt.loadbalancer.server.port=80"