Files
docker-compose-cookbooks/passbolt/docker-compose.yml
T

59 lines
1.8 KiB
YAML

################################################################################
# Passbolt
# make sure you use the $PREFIX from .env for project_name
# docker-compose -p project_name up -d
#
# Version 1
################################################################################
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 <email> -f <firstname> -l <lastname> -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"