This commit is contained in:
2025-12-29 19:11:06 +01:00
parent 27bbd9621a
commit b902142c4b
10 changed files with 216 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
[Unit]
Description=Immich Machine Learning Container
After=network-online.target
Wants=network-online.target
[Service]
Restart=always
ExecStart=/usr/bin/podman run --rm --name immich-machine-learning \
--network {{ immich_network_name }} \
--user {{ immich_container_uid }}:{{ immich_container_gid }} \
-v {{ immich_model_cache_dir }}:/cache:Z \
{{ immich_ml_image }}
ExecStop=/usr/bin/podman stop -t 10 immich-machine-learning
ExecStopPost=/usr/bin/podman rm -f immich-machine-learning
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,20 @@
[Unit]
Description=Immich Microservices Container
After=network-online.target immich-redis.service immich-postgres.service
Wants=network-online.target
Requires=immich-redis.service immich-postgres.service
[Service]
Restart=always
ExecStart=/usr/bin/podman run --rm --name immich-microservices \
--network {{ immich_network_name }} \
--env-file {{ immich_env_path }} \
--user {{ immich_container_uid }}:{{ immich_container_gid }} \
-v {{ immich_upload_location }}:/usr/src/app/upload:Z \
{{ immich_microservices_image }}
ExecStop=/usr/bin/podman stop -t 10 immich-microservices
ExecStopPost=/usr/bin/podman rm -f immich-microservices
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,18 @@
[Unit]
Description=Immich Postgres Container
After=network-online.target
Wants=network-online.target
[Service]
Restart=always
ExecStart=/usr/bin/podman run --rm --name immich-postgres \
--network {{ immich_network_name }} \
--env-file {{ immich_postgres_env_path }} \
-v {{ immich_db_data_location }}:/var/lib/postgresql/data:Z \
{{ immich_postgres_image }}
ExecStop=/usr/bin/podman stop -t 10 immich-postgres
ExecStopPost=/usr/bin/podman rm -f immich-postgres
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,17 @@
[Unit]
Description=Immich Redis Container
After=network-online.target
Wants=network-online.target
[Service]
Restart=always
ExecStart=/usr/bin/podman run --rm --name immich-redis \
--network {{ immich_network_name }} \
-v {{ immich_redis_data_location }}:/data:Z \
{{ immich_redis_image }}
ExecStop=/usr/bin/podman stop -t 10 immich-redis
ExecStopPost=/usr/bin/podman rm -f immich-redis
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,21 @@
[Unit]
Description=Immich Server Container
After=network-online.target immich-redis.service immich-postgres.service
Wants=network-online.target
Requires=immich-redis.service immich-postgres.service
[Service]
Restart=always
ExecStart=/usr/bin/podman run --rm --name immich-server \
--network {{ immich_network_name }} \
-p {{ immich_server_port }}:3001 \
--env-file {{ immich_env_path }} \
--user {{ immich_container_uid }}:{{ immich_container_gid }} \
-v {{ immich_upload_location }}:/usr/src/app/upload:Z \
{{ immich_server_image }}
ExecStop=/usr/bin/podman stop -t 10 immich-server
ExecStopPost=/usr/bin/podman rm -f immich-server
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target

10
templates/immich.env.j2 Normal file
View File

@@ -0,0 +1,10 @@
TZ={{ immich_timezone }}
DB_HOSTNAME=immich-postgres
DB_PORT=5432
DB_USERNAME={{ immich_db_user }}
DB_PASSWORD={{ immich_db_password }}
DB_DATABASE_NAME={{ immich_db_name }}
REDIS_HOSTNAME=immich-redis
{% if immich_machine_learning_enabled %}
IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3003
{% endif %}

View File

@@ -0,0 +1,3 @@
POSTGRES_USER={{ immich_db_user }}
POSTGRES_PASSWORD={{ immich_db_password }}
POSTGRES_DB={{ immich_db_name }}