diff --git a/apps/photoprism/config.json b/apps/photoprism/config.json index 972e43c9..98f59b20 100644 --- a/apps/photoprism/config.json +++ b/apps/photoprism/config.json @@ -3,8 +3,9 @@ "name": "PhotoPrism", "port": 8110, "available": true, + "exposable": true, "id": "photoprism", - "tipi_version": 1, + "tipi_version": 2, "version": "latest", "categories": ["photography"], "description": "PhotoPrism® is an AI-Powered Photos App for the Decentralized Web. It makes use of the latest technologies to tag and find pictures automatically without getting in your way. You can run it at home, on a private server, or in the cloud. Default username: admin", @@ -19,6 +20,22 @@ "min": 8, "required": true, "env_variable": "PHOTOPRISM_ADMIN_PASSWORD" + }, + { + "type": "random", + "label": "Photoprism DB password", + "max": 50, + "min": 8, + "required": true, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Photoprism root DB password", + "max": 50, + "min": 8, + "required": true, + "env_variable": "DB_ROOT_PASSWORD" } ] } diff --git a/apps/photoprism/docker-compose.yml b/apps/photoprism/docker-compose.yml index 1ffa33bc..4c615400 100644 --- a/apps/photoprism/docker-compose.yml +++ b/apps/photoprism/docker-compose.yml @@ -1,5 +1,4 @@ version: "3.7" - services: photoprism: # TODO: Special image for arm/v7 is available @@ -12,7 +11,7 @@ services: - "${APP_PORT}:2342" environment: PHOTOPRISM_ADMIN_PASSWORD: ${PHOTOPRISM_ADMIN_PASSWORD} - PHOTOPRISM_SITE_URL: "http://localhost:2342/" + PHOTOPRISM_SITE_URL: "${APP_PROTOCOL:-http}://${APP_DOMAIN}/" PHOTOPRISM_ORIGINALS_LIMIT: 5000 PHOTOPRISM_HTTP_COMPRESSION: "gzip" PHOTOPRISM_LOG_LEVEL: "info" @@ -34,7 +33,7 @@ services: PHOTOPRISM_DATABASE_SERVER: "photoprism-db:3306" PHOTOPRISM_DATABASE_NAME: "photoprism" PHOTOPRISM_DATABASE_USER: "photoprism" - PHOTOPRISM_DATABASE_PASSWORD: "photoprism" + PHOTOPRISM_DATABASE_PASSWORD: "${DB_PASSWORD}" PHOTOPRISM_SITE_CAPTION: "AI-Powered Photos App" working_dir: "/photoprism" volumes: @@ -42,10 +41,17 @@ services: - "${APP_DATA_DIR}/data/photoprism/storage:/photoprism/storage" networks: - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.photoprism.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.photoprism.entrypoints: websecure + traefik.http.routers.photoprism.service: photoprism + traefik.http.routers.photoprism.tls.certresolver: myresolver + traefik.http.services.photoprism.loadbalancer.server.port: 2342 photoprism-db: restart: unless-stopped - image: mariadb:10.8.3 + image: mariadb:10.8 container_name: photoprism-db command: mysqld --innodb-buffer-pool-size=128M --transaction-isolation=READ-COMMITTED --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --max-connections=512 --innodb-rollback-on-timeout=OFF --innodb-lock-wait-timeout=120 volumes: @@ -53,7 +59,7 @@ services: environment: MARIADB_DATABASE: "photoprism" MARIADB_USER: "photoprism" - MARIADB_PASSWORD: "photoprism" - MARIADB_ROOT_PASSWORD: "photoprism" + MARIADB_PASSWORD: "${DB_PASSWORD}" + MARIADB_ROOT_PASSWORD: "${DB_ROOT_PASSWORD}" networks: - tipi_main_network