65 lines
1.6 KiB
YAML
65 lines
1.6 KiB
YAML
version: "3.9"
|
|
services:
|
|
db:
|
|
image: mariadb:10.11
|
|
restart: unless-stopped
|
|
environment:
|
|
MYSQL_RANDOM_ROOT_PASSWORD: "true"
|
|
MYSQL_DATABASE: "passbolt"
|
|
MYSQL_USER: "passbolt"
|
|
MYSQL_PASSWORD: "P4ssb0lt"
|
|
volumes:
|
|
- ./data/database:/var/lib/mysql
|
|
networks:
|
|
- traefik_default
|
|
|
|
webapp:
|
|
image: passbolt/passbolt:latest-ce
|
|
#Alternatively you can use rootless:
|
|
#image: passbolt/passbolt:latest-ce-non-root
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- db
|
|
environment:
|
|
APP_FULL_BASE_URL: https://passbolt.lan.ddnsgeek.com
|
|
DATASOURCES_DEFAULT_HOST: "db"
|
|
DATASOURCES_DEFAULT_USERNAME: "passbolt"
|
|
DATASOURCES_DEFAULT_PASSWORD: "P4ssb0lt"
|
|
DATASOURCES_DEFAULT_DATABASE: "passbolt"
|
|
volumes:
|
|
- ./data/gpg:/etc/passbolt/gpg
|
|
- ./data/jwt:/etc/passbolt/jwt
|
|
command:
|
|
[
|
|
"/usr/bin/wait-for.sh",
|
|
"-t",
|
|
"0",
|
|
"db:3306",
|
|
"--",
|
|
"/docker-entrypoint.sh",
|
|
]
|
|
networks:
|
|
- traefik_default
|
|
labels:
|
|
- "traefik.http.routers.passbolt.rule=Host(`passbolt.lan.ddnsgeek.com`)"
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.passbolt.entrypoints=websecure"
|
|
- "traefik.http.routers.passbolt.tls.certresolver=myresolver"
|
|
- "io.portainer.accesscontrol.public"
|
|
- "traefik.http.routers.passbolt.middlewares=error-pages-middleware"
|
|
|
|
# ports:
|
|
# - 8082:80
|
|
# - 4432:443
|
|
#Alternatively for non-root images:
|
|
# - 80:8080
|
|
# - 443:4433
|
|
|
|
#volumes:
|
|
# database_volume:
|
|
# gpg_volume:
|
|
# jwt_volume:
|
|
networks:
|
|
traefik_default:
|
|
external: true
|