SHOW:
|
|
- or go back to the newest paste.
1 | # https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml | |
2 | ||
3 | #PMOW NOTES | |
4 | #network must be attached for proxy, see bash file | |
5 | ||
6 | ||
7 | ||
8 | name: immich | |
9 | ||
10 | services: | |
11 | immich-server: | |
12 | container_name: immich_server | |
13 | image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} | |
14 | # extends: | |
15 | # file: hwaccel.transcoding.yml | |
16 | # service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding | |
17 | volumes: | |
18 | # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file | |
19 | - ${UPLOAD_LOCATION}:/usr/src/app/upload | |
20 | - /etc/localtime:/etc/localtime:ro | |
21 | env_file: | |
22 | - stack.env | |
23 | environment: | |
24 | - VIRTUAL_HOST=immich.pmow.org | |
25 | - LETSENCRYPT_HOST=immich.pmow.org | |
26 | - LETSENCRYPT_EMAIL=letsencrypt@pmow.org | |
27 | - VIRTUAL_PROTO=http | |
28 | ||
29 | #enable for large file batch uploads circumventing any proxy shenanigans | |
30 | ports: | |
31 | - '2283:2283' | |
32 | depends_on: | |
33 | - redis | |
34 | - database | |
35 | restart: always | |
36 | healthcheck: | |
37 | disable: false | |
38 | ||
39 | immich-machine-learning: | |
40 | container_name: immich_machine_learning | |
41 | # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag. | |
42 | # Example tag: ${IMMICH_VERSION:-release}-cuda | |
43 | image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} | |
44 | # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration | |
45 | # file: hwaccel.ml.yml | |
46 | # service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable | |
47 | volumes: | |
48 | - model-cache:/cache | |
49 | env_file: | |
50 | - stack.env | |
51 | restart: always | |
52 | healthcheck: | |
53 | disable: false | |
54 | ||
55 | redis: | |
56 | container_name: immich_redis | |
57 | image: docker.io/redis:6.2-alpine@sha256:2ba50e1ac3a0ea17b736ce9db2b0a9f6f8b85d4c27d5f5accc6a416d8f42c6d5 | |
58 | healthcheck: | |
59 | test: redis-cli ping || exit 1 | |
60 | restart: always | |
61 | ||
62 | database: | |
63 | container_name: immich_postgres | |
64 | image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0 | |
65 | environment: | |
66 | POSTGRES_PASSWORD: ${DB_PASSWORD} | |
67 | POSTGRES_USER: ${DB_USERNAME} | |
68 | POSTGRES_DB: ${DB_DATABASE_NAME} | |
69 | POSTGRES_INITDB_ARGS: '--data-checksums' | |
70 | volumes: | |
71 | # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file | |
72 | - ${DB_DATA_LOCATION}:/var/lib/postgresql/data | |
73 | healthcheck: | |
74 | test: pg_isready --dbname='${DB_DATABASE_NAME}' --username='${DB_USERNAME}' || exit 1; Chksum="$$(psql --dbname='${DB_DATABASE_NAME}' --username='${DB_USERNAME}' --tuples-only --no-align --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')"; echo "checksum failure count is $$Chksum"; [ "$$Chksum" = '0' ] || exit 1 | |
75 | interval: 5m | |
76 | start_interval: 30s | |
77 | start_period: 5m | |
78 | command: | |
79 | [ | |
80 | 'postgres', | |
81 | '-c', | |
82 | 'shared_preload_libraries=vectors.so', | |
83 | '-c', | |
84 | 'search_path="$$user", public, vectors', | |
85 | '-c', | |
86 | 'logging_collector=on', | |
87 | '-c', | |
88 | 'max_wal_size=2GB', | |
89 | '-c', | |
90 | 'shared_buffers=512MB', | |
91 | '-c', | |
92 | 'wal_compression=on', | |
93 | ] | |
94 | restart: always | |
95 | ||
96 | volumes: | |
97 | model-cache: |