parent
ec374a9172
commit
34e316b81b
8 changed files with 21 additions and 40 deletions
|
@ -3,11 +3,12 @@ version: '3.5'
|
|||
# Example Docker Compose config file for PhotoPrism (Raspberry Pi and other ARM-based devices)
|
||||
#
|
||||
# Note:
|
||||
# - Use https://dl.photoprism.org/docker/armv7/ for running PhotoPrism on ARMv7-based devices.
|
||||
# - You have to boot your Raspberry Pi 3 / 4 with the parameter "arm_64bit=1" in config.txt to use our ARM64 image.
|
||||
# - If you see errors related to "cgroups", it may help to add the following line to /boot/firmware/cmdline.txt:
|
||||
# cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1
|
||||
# - Running PhotoPrism on a server with less than 4 GB of swap (or setting a Docker memory / swap limit) can cause
|
||||
# unexpected restarts ("crashes"), especially when the indexer temporarily needs more memory to process large files.
|
||||
# - If you see errors related to "cgroups", it may help to add the following line to /boot/firmware/cmdline.txt:
|
||||
# cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1
|
||||
# - If you install PhotoPrism on a public server outside your home network, please always run it behind a secure
|
||||
# HTTPS reverse proxy such as Traefik, Caddy, or NGINX. Your files and passwords will otherwise be transmitted
|
||||
# in clear text and can be intercepted by anyone, including your provider, hackers, and governments.
|
||||
|
@ -45,8 +46,6 @@ services:
|
|||
## ARM64, and ARMv7. Use photoprism/photoprism:preview for testing preview builds or
|
||||
## photoprism/photoprism:latest for the stable release:
|
||||
image: photoprism/photoprism:latest
|
||||
## Owners of ARMv7-based devices may have to explicitly specify the image architecture:
|
||||
# platform: "linux/arm"
|
||||
depends_on:
|
||||
- mariadb
|
||||
## Only enable automatic restarts once your installation is properly
|
||||
|
@ -115,37 +114,19 @@ services:
|
|||
## see https://docs.photoprism.org/getting-started/faq/#should-i-use-sqlite-mariadb-or-mysql
|
||||
mariadb:
|
||||
restart: unless-stopped
|
||||
image: arm64v8/mariadb:10.6
|
||||
image: arm64v8/mariadb:10.6 # this mariadb image runs on ARM64-based devices only
|
||||
security_opt:
|
||||
- seccomp:unconfined
|
||||
- apparmor:unconfined
|
||||
command: mysqld --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:
|
||||
- "./database:/var/lib/mysql" # Never remove
|
||||
- "./database:/var/lib/mysql" # never remove
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: insecure
|
||||
MYSQL_DATABASE: photoprism
|
||||
MYSQL_USER: photoprism
|
||||
MYSQL_PASSWORD: insecure
|
||||
|
||||
## Owners of ARMv7-based devices have to revert to an alternative image if they want to use MariaDB.
|
||||
## The official image is available for AMD64 and ARM64 only. ARM64 users can remove this:
|
||||
#
|
||||
# mariadb:
|
||||
# restart: unless-stopped
|
||||
# image: lscr.io/linuxserver/mariadb:latest
|
||||
# security_opt:
|
||||
# - seccomp:unconfined
|
||||
# - apparmor:unconfined
|
||||
# command: mysqld --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:
|
||||
# - "./mariadb:/config" # Never remove
|
||||
# environment:
|
||||
# MYSQL_ROOT_PASSWORD: insecure
|
||||
# MYSQL_DATABASE: photoprism
|
||||
# MYSQL_USER: photoprism
|
||||
# MYSQL_PASSWORD: insecure
|
||||
|
||||
## Watchtower upgrades services automatically (optional)
|
||||
## see https://docs.photoprism.org/getting-started/updates/#watchtower
|
||||
#
|
||||
|
@ -154,7 +135,7 @@ services:
|
|||
# image: containrrr/watchtower
|
||||
# environment:
|
||||
# WATCHTOWER_CLEANUP: "true"
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # Checks for updates every two hours
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # checks for updates every two hours
|
||||
# volumes:
|
||||
# - "/var/run/docker.sock:/var/run/docker.sock"
|
||||
# - "~/.docker/config.json:/config.json" # Optional, for authentication if you have a Docker Hub account
|
|
@ -4,10 +4,10 @@ version: '3.5'
|
|||
#
|
||||
# Note:
|
||||
# - Use https://dl.photoprism.org/docker/arm64/docker-compose.yml for running PhotoPrism on ARM64-based devices.
|
||||
# - If you see errors related to "cgroups", it may help to add the following line to /boot/firmware/cmdline.txt:
|
||||
# cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1
|
||||
# - Running PhotoPrism on a server with less than 4 GB of swap (or setting a Docker memory / swap limit) can cause
|
||||
# unexpected restarts ("crashes"), especially when the indexer temporarily needs more memory to process large files.
|
||||
# - If you see errors related to "cgroups", it may help to add the following line to /boot/firmware/cmdline.txt:
|
||||
# cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1
|
||||
# - If you install PhotoPrism on a public server outside your home network, please always run it behind a secure
|
||||
# HTTPS reverse proxy such as Traefik, Caddy, or NGINX. Your files and passwords will otherwise be transmitted
|
||||
# in clear text and can be intercepted by anyone, including your provider, hackers, and governments.
|
||||
|
@ -118,7 +118,7 @@ services:
|
|||
- apparmor:unconfined
|
||||
command: mysqld --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:
|
||||
- "./mariadb:/config" # Never remove
|
||||
- "./mariadb:/config" # never remove
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: insecure
|
||||
MYSQL_DATABASE: photoprism
|
||||
|
@ -133,7 +133,7 @@ services:
|
|||
# image: containrrr/watchtower
|
||||
# environment:
|
||||
# WATCHTOWER_CLEANUP: "true"
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # Checks for updates every two hours
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # checks for updates every two hours
|
||||
# volumes:
|
||||
# - "/var/run/docker.sock:/var/run/docker.sock"
|
||||
# - "~/.docker/config.json:/config.json" # Optional, for authentication if you have a Docker Hub account
|
|
@ -196,7 +196,7 @@ services:
|
|||
- apparmor:unconfined
|
||||
command: mysqld --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:
|
||||
- "./database:/var/lib/mysql" # Never remove
|
||||
- "./database:/var/lib/mysql" # never remove
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: "_admin_password_"
|
||||
MYSQL_DATABASE: "photoprism"
|
||||
|
@ -221,6 +221,6 @@ services:
|
|||
container_name: watchtower
|
||||
environment:
|
||||
WATCHTOWER_CLEANUP: "true"
|
||||
WATCHTOWER_POLL_INTERVAL: 86400 # Checks for updates every day
|
||||
WATCHTOWER_POLL_INTERVAL: 86400 # checks for updates every day
|
||||
volumes:
|
||||
- "/var/run/docker.sock:/var/run/docker.sock"
|
||||
|
|
|
@ -121,7 +121,7 @@ services:
|
|||
- apparmor:unconfined
|
||||
command: mysqld --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:
|
||||
- "./database:/var/lib/mysql" # Never remove
|
||||
- "./database:/var/lib/mysql" # never remove
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: insecure
|
||||
MYSQL_DATABASE: photoprism
|
||||
|
@ -136,7 +136,7 @@ services:
|
|||
# image: containrrr/watchtower
|
||||
# environment:
|
||||
# WATCHTOWER_CLEANUP: "true"
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # Checks for updates every two hours
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # checks for updates every two hours
|
||||
# volumes:
|
||||
# - "/var/run/docker.sock:/var/run/docker.sock"
|
||||
# - "~/.docker/config.json:/config.json" # Optional, for authentication if you have a Docker Hub account
|
||||
|
|
|
@ -101,7 +101,7 @@ services:
|
|||
## see https://mariadb.com/kb/en/server-system-variables/#lower_case_table_names
|
||||
command: mysqld --lower-case-table-names=1 --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:
|
||||
- "mariadb_data:/var/lib/mysql" # Never remove
|
||||
- "mariadb_data:/var/lib/mysql" # never remove
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: insecure
|
||||
MYSQL_DATABASE: photoprism
|
||||
|
@ -116,7 +116,7 @@ services:
|
|||
# image: containrrr/watchtower
|
||||
# environment:
|
||||
# WATCHTOWER_CLEANUP: "true"
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # Checks for updates every two hours
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # checks for updates every two hours
|
||||
# volumes:
|
||||
# - "/var/run/docker.sock:/var/run/docker.sock"
|
||||
# - "~/.docker/config.json:/config.json" # Optional, for authentication if you have a Docker Hub account
|
||||
|
|
|
@ -113,7 +113,7 @@ services:
|
|||
- apparmor:unconfined
|
||||
command: mysqld --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:
|
||||
- "./database:/var/lib/mysql" # Never remove
|
||||
- "./database:/var/lib/mysql" # never remove
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: insecure
|
||||
MYSQL_DATABASE: photoprism
|
||||
|
@ -138,7 +138,7 @@ services:
|
|||
# image: containrrr/watchtower
|
||||
# environment:
|
||||
# WATCHTOWER_CLEANUP: "true"
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # Checks for updates every two hours
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # checks for updates every two hours
|
||||
# volumes:
|
||||
# - "/var/run/docker.sock:/var/run/docker.sock"
|
||||
# - "~/.docker/config.json:/config.json" # Optional, for authentication if you have a Docker Hub account
|
|
@ -103,7 +103,7 @@ services:
|
|||
# image: containrrr/watchtower
|
||||
# environment:
|
||||
# WATCHTOWER_CLEANUP: "true"
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # Checks for updates every two hours
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # checks for updates every two hours
|
||||
# volumes:
|
||||
# - "/var/run/docker.sock:/var/run/docker.sock"
|
||||
# - "~/.docker/config.json:/config.json" # Optional, for authentication if you have a Docker Hub account
|
|
@ -105,7 +105,7 @@ services:
|
|||
## see https://mariadb.com/kb/en/server-system-variables/#lower_case_table_names
|
||||
command: mysqld --lower-case-table-names=1 --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:
|
||||
- "mariadb_data:/var/lib/mysql" # Never remove, the named volume "mariadb_data" is defined at the bottom
|
||||
- "mariadb_data:/var/lib/mysql" # never remove, the named volume "mariadb_data" is defined at the bottom
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: insecure
|
||||
MYSQL_DATABASE: photoprism
|
||||
|
@ -120,7 +120,7 @@ services:
|
|||
# image: containrrr/watchtower
|
||||
# environment:
|
||||
# WATCHTOWER_CLEANUP: "true"
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # Checks for updates every two hours
|
||||
# WATCHTOWER_POLL_INTERVAL: 7200 # checks for updates every two hours
|
||||
# volumes:
|
||||
# - "/var/run/docker.sock:/var/run/docker.sock"
|
||||
# - "~/.docker/config.json:/config.json" # Optional, for authentication if you have a Docker Hub account
|
||||
|
|
Loading…
Reference in a new issue