diff --git a/docker/examples/arm64/docker-compose.yml b/docker/examples/arm64/docker-compose.yml index a7f1e4b12..aa63b275f 100644 --- a/docker/examples/arm64/docker-compose.yml +++ b/docker/examples/arm64/docker-compose.yml @@ -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 \ No newline at end of file diff --git a/docker/examples/armv7/docker-compose.yml b/docker/examples/armv7/docker-compose.yml index 7ef758332..a2f1d98c2 100644 --- a/docker/examples/armv7/docker-compose.yml +++ b/docker/examples/armv7/docker-compose.yml @@ -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 \ No newline at end of file diff --git a/docker/examples/cloud/docker-compose.yml b/docker/examples/cloud/docker-compose.yml index e9d2ca596..3c2a30196 100644 --- a/docker/examples/cloud/docker-compose.yml +++ b/docker/examples/cloud/docker-compose.yml @@ -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" diff --git a/docker/examples/docker-compose.yml b/docker/examples/docker-compose.yml index e542c9529..96a2704bb 100644 --- a/docker/examples/docker-compose.yml +++ b/docker/examples/docker-compose.yml @@ -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 diff --git a/docker/examples/macos/docker-compose.yml b/docker/examples/macos/docker-compose.yml index 47af9734e..28b85cc3f 100644 --- a/docker/examples/macos/docker-compose.yml +++ b/docker/examples/macos/docker-compose.yml @@ -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 diff --git a/docker/examples/scheduler/docker-compose.yml b/docker/examples/scheduler/docker-compose.yml index 4a136b88a..2cebfe41d 100644 --- a/docker/examples/scheduler/docker-compose.yml +++ b/docker/examples/scheduler/docker-compose.yml @@ -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 \ No newline at end of file diff --git a/docker/examples/sqlite/docker-compose.yml b/docker/examples/sqlite/docker-compose.yml index 7a301582b..77aa75c4a 100644 --- a/docker/examples/sqlite/docker-compose.yml +++ b/docker/examples/sqlite/docker-compose.yml @@ -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 \ No newline at end of file diff --git a/docker/examples/windows/docker-compose.yml b/docker/examples/windows/docker-compose.yml index 85a27327c..838d72052 100644 --- a/docker/examples/windows/docker-compose.yml +++ b/docker/examples/windows/docker-compose.yml @@ -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