Skip to content

Commit e82e153

Browse files
committed
Merge appjail support from daemonless/daemonless-io#1
1 parent c7eff6f commit e82e153

2 files changed

Lines changed: 167 additions & 0 deletions

File tree

README.md

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,108 @@ Before deploying, ensure your host environment is ready. See the [Quick Start Gu
113113
podman-compose up -d
114114
```
115115

116+
=== ":appjail-appjail: AppJail Director"
117+
118+
**.env**:
119+
120+
```
121+
UPLOAD_LOCATION=/var/appjail-volumes/immich/library
122+
DB_DATA_LOCATION=/var/appjail-volumes/immich/postgres
123+
CACHE_LOCATION=/var/appjail-volumes/immich/cache
124+
REDIS_DATA_LOCATION=/var/appjail-volumes/immich/redis
125+
TZ=America/Caracas
126+
DB_PASSWORD=postgres
127+
DB_USERNAME=postgres
128+
DB_DATABASE_NAME=immich
129+
DIRECTOR_PROJECT=immich
130+
```
131+
132+
**appjail-director.yml**:
133+
134+
```yaml
135+
options:
136+
# Equivalent to 'network_mode: host'
137+
- alias:
138+
- ip4_inherit:
139+
services:
140+
immich-server:
141+
name: immich_server
142+
priority: 100
143+
options:
144+
- from: ghcr.io/daemonless/immich-server:latest
145+
volumes:
146+
- immich-data: /data
147+
oci:
148+
environment:
149+
- DB_HOSTNAME: 127.0.0.1
150+
- REDIS_HOSTNAME: 127.0.0.1
151+
- IMMICH_MACHINE_LEARNING_URL: http://127.0.0.1:3003
152+
- TZ: !ENV '${TZ}'
153+
immich-machine-learning:
154+
name: immich_machine_learning
155+
options:
156+
- from: ghcr.io/daemonless/immich-ml:latest
157+
oci:
158+
environment:
159+
- HF_HOME: /cache/huggingface
160+
- MPLCONFIGDIR: /tmp
161+
- TZ: !ENV '${TZ}'
162+
volumes:
163+
- model-cache: /cache
164+
redis:
165+
name: immich_redis
166+
options:
167+
- from: ghcr.io/daemonless/redis:latest
168+
oci:
169+
environment:
170+
- LANG: C.UTF-8
171+
- TZ: !ENV '${TZ}'
172+
volumes:
173+
- redis-data: /config
174+
database:
175+
name: immich_postgres
176+
options:
177+
- from: ghcr.io/daemonless/immich-postgres:latest
178+
- template: !ENV '${PWD}/immich-postgres-template.conf'
179+
oci:
180+
environment:
181+
- POSTGRES_PASSWORD: !ENV '${DB_PASSWORD}'
182+
- POSTGRES_USER: !ENV '${DB_USERNAME}'
183+
- POSTGRES_DB: !ENV '${DB_DATABASE_NAME}'
184+
volumes:
185+
- db-data: /var/lib/postgresql/data
186+
volumes:
187+
immich-data:
188+
device: !ENV '${UPLOAD_LOCATION}'
189+
owner: 1000
190+
group: 1000
191+
model-cache:
192+
device: !ENV '${CACHE_LOCATION}'
193+
redis-data:
194+
device: !ENV '${REDIS_DATA_LOCATION}'
195+
db-data:
196+
device: !ENV '${DB_DATA_LOCATION}'
197+
```
198+
199+
**immich-postgres-template.conf**:
200+
201+
```
202+
exec.start: "/bin/sh /etc/rc"
203+
exec.stop: "/bin/sh /etc/rc.shutdown jail"
204+
sysvmsg: new
205+
sysvsem: new
206+
sysvshm: new
207+
mount.devfs
208+
persist
209+
```
210+
211+
**Makejail**:
212+
213+
```
214+
OPTION container=boot args:--pull
215+
OPTION overwrite=force
216+
```
217+
116218
Access Immich at: **http://your-host:2283**
117219

118220
## Compose File

compose.yaml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,71 @@ x-daemonless:
2121
upstream_url: https://github.com/immich-app/immich
2222
web_url: https://immich.app/
2323
type: stack
24+
25+
appjail:
26+
director:
27+
options:
28+
- alias:
29+
- ip4_inherit:
30+
services:
31+
immich-server:
32+
name: immich_server
33+
priority: 100
34+
options:
35+
- from: ghcr.io/daemonless/immich-server:latest
36+
volumes:
37+
- immich-data: /data
38+
oci:
39+
environment:
40+
- DB_HOSTNAME: 127.0.0.1
41+
- REDIS_HOSTNAME: 127.0.0.1
42+
- IMMICH_MACHINE_LEARNING_URL: http://127.0.0.1:3003
43+
- TZ: "!ENV '${TZ}'"
44+
immich-machine-learning:
45+
name: immich_machine_learning
46+
options:
47+
- from: ghcr.io/daemonless/immich-ml:latest
48+
oci:
49+
environment:
50+
- HF_HOME: /cache/huggingface
51+
- MPLCONFIGDIR: /tmp
52+
- TZ: "!ENV '${TZ}'"
53+
volumes:
54+
- model-cache: /cache
55+
redis:
56+
name: immich_redis
57+
options:
58+
- from: ghcr.io/daemonless/redis:latest
59+
oci:
60+
environment:
61+
- LANG: C.UTF-8
62+
- TZ: "!ENV '${TZ}'"
63+
volumes:
64+
- redis-data: /config
65+
database:
66+
name: immich_postgres
67+
options:
68+
- from: ghcr.io/daemonless/immich-postgres:latest
69+
- template: "!ENV '${PWD}/immich-postgres-template.conf'"
70+
oci:
71+
environment:
72+
- POSTGRES_PASSWORD: "!ENV '${DB_PASSWORD}'"
73+
- POSTGRES_USER: "!ENV '${DB_USERNAME}'"
74+
- POSTGRES_DB: "!ENV '${DB_DATABASE_NAME}'"
75+
volumes:
76+
- db-data: /var/lib/postgresql/data
77+
volumes:
78+
immich-data:
79+
device: "!ENV '${UPLOAD_LOCATION}'"
80+
owner: 1000
81+
group: 1000
82+
model-cache:
83+
device: "!ENV '${CACHE_LOCATION}'"
84+
redis-data:
85+
device: "!ENV '${REDIS_DATA_LOCATION}'"
86+
db-data:
87+
device: "!ENV '${DB_DATA_LOCATION}'"
88+
2489
docs:
2590
manual: true
2691
env:

0 commit comments

Comments
 (0)