Add photoprism
This commit is contained in:
parent
bec5b584af
commit
bcb299de35
|
@ -0,0 +1,7 @@
|
|||
# selfhosted
|
||||
|
||||
## VPN
|
||||
To be added (Tailscale)
|
||||
|
||||
## Backup strategy
|
||||
To be added
|
|
@ -0,0 +1 @@
|
|||
# backup strategy
|
|
@ -0,0 +1,3 @@
|
|||
# Encryption
|
||||
|
||||
https://wilw.dev/notes/volume-encryption
|
|
@ -0,0 +1,48 @@
|
|||
# Mounting new volumes
|
||||
|
||||
1. ssh to storagebox
|
||||
|
||||
```
|
||||
ssh -p23 u382808@u382808.your-storagebox.de
|
||||
```
|
||||
|
||||
2. Create a new directory
|
||||
|
||||
```
|
||||
mkdir photoprism_import_data
|
||||
```
|
||||
|
||||
3. Navigate to [Hetzner cloud storage](https://robot.hetzner.com/storage). Create a new sub-account. Allow Samba, SSH, external reachability.
|
||||
|
||||
4. ssh to server
|
||||
|
||||
5. Create new credentials in `/etc/secure_config`:
|
||||
|
||||
```
|
||||
username=(storagebox username)
|
||||
password=(storagebox password)
|
||||
```
|
||||
|
||||
6. Make mount directory
|
||||
|
||||
```
|
||||
sudo mkdir /mnt/photoprism_import_data
|
||||
```
|
||||
|
||||
6. Update /etc/fstab
|
||||
|
||||
```
|
||||
//u382808-sub3.your-storagebox.de/u382808-sub3 /mnt/photoprism_import_data cifs seal,vers=3,iocharset=utf8,rw,credentials=/etc/secure_config/.cifs-credentials-photoprism-import.txt,uid=1000,gid=1001,forceuid,forcegid,file_mode=0770,dir_mode=0770 0 0
|
||||
```
|
||||
|
||||
7. Mount
|
||||
|
||||
```
|
||||
mount -a
|
||||
```
|
||||
|
||||
8. Verify that the storage box is mounted correctly:
|
||||
|
||||
```
|
||||
df -h
|
||||
```
|
|
@ -0,0 +1,12 @@
|
|||
# photoprism
|
||||
|
||||
## Configuration
|
||||
|
||||
Setup `.env`:
|
||||
|
||||
```
|
||||
PHOTOPRISM_ADMIN_PASSWORD=''
|
||||
PHOTOPRISM_DATABASE_PASSWORD=''
|
||||
PHOTOPRISM_MARIADB_PASSWORD=''
|
||||
PHOTOPRISM_MARIADB_ROOT_PASSWORD=''
|
||||
``
|
|
@ -0,0 +1,63 @@
|
|||
version: '3.5'
|
||||
|
||||
services:
|
||||
photoprism:
|
||||
image: photoprism/photoprism:latest
|
||||
depends_on:
|
||||
- mariadb
|
||||
restart: unless-stopped
|
||||
security_opt:
|
||||
- seccomp:unconfined
|
||||
- apparmor:unconfined
|
||||
ports:
|
||||
- "100.104.163.2:2342:80"
|
||||
environment:
|
||||
PHOTOPRISM_ADMIN_PASSWORD: ${PHOTOPRISM_ADMIN_PASSWORD}
|
||||
PHOTOPRISM_AUTH_MODE: "password"
|
||||
PHOTOPRISM_SITE_URL: "http://100.104.163.2:2342:80"
|
||||
PHOTOPRISM_ORIGINALS_LIMIT: 5000
|
||||
PHOTOPRISM_HTTP_COMPRESSION: "gzip"
|
||||
PHOTOPRISM_LOG_LEVEL: "info"
|
||||
PHOTOPRISM_READONLY: "false"
|
||||
PHOTOPRISM_EXPERIMENTAL: "false"
|
||||
PHOTOPRISM_DISABLE_CHOWN: "false"
|
||||
PHOTOPRISM_DISABLE_WEBDAV: "false"
|
||||
PHOTOPRISM_DISABLE_SETTINGS: "false"
|
||||
PHOTOPRISM_DISABLE_TENSORFLOW: "false"
|
||||
PHOTOPRISM_DISABLE_FACES: "false"
|
||||
PHOTOPRISM_DISABLE_CLASSIFICATION: "false"
|
||||
PHOTOPRISM_DISABLE_RAW: "false"
|
||||
PHOTOPRISM_RAW_PRESETS: "false"
|
||||
PHOTOPRISM_JPEG_QUALITY: 85
|
||||
PHOTOPRISM_DETECT_NSFW: "false"
|
||||
PHOTOPRISM_UPLOAD_NSFW: "true"
|
||||
PHOTOPRISM_DATABASE_DRIVER: "mysql"
|
||||
PHOTOPRISM_DATABASE_SERVER: "mariadb:3306"
|
||||
PHOTOPRISM_DATABASE_NAME: "photoprism"
|
||||
PHOTOPRISM_DATABASE_USER: "photoprism"
|
||||
PHOTOPRISM_DATABASE_PASSWORD: ${PHOTOPRISM_DATABASE_PASSWORD}
|
||||
PHOTOPRISM_SITE_CAPTION: "AI-Powered Photos App"
|
||||
PHOTOPRISM_SITE_DESCRIPTION: ""
|
||||
PHOTOPRISM_SITE_AUTHOR: ""
|
||||
working_dir: "/photoprism"
|
||||
volumes:
|
||||
- "/mnt/photoprism_data:/photoprism/originals"
|
||||
- "/mnt/photoprism_import_data:/photoprism/import"
|
||||
- "${PWD}/storage:/photoprism/storage"
|
||||
|
||||
mariadb:
|
||||
restart: unless-stopped
|
||||
image: mariadb:10.8
|
||||
security_opt:
|
||||
- seccomp:unconfined
|
||||
- apparmor:unconfined
|
||||
command: mysqld --innodb-buffer-pool-size=512M --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:
|
||||
- "/data/database:/var/lib/mysql"
|
||||
environment:
|
||||
MARIADB_AUTO_UPGRADE: "1"
|
||||
MARIADB_INITDB_SKIP_TZINFO: "1"
|
||||
MARIADB_DATABASE: "photoprism"
|
||||
MARIADB_USER: "photoprism"
|
||||
MARIADB_PASSWORD: ${PHOTOPRISM_MARIADB_PASSWORD}
|
||||
MARIADB_ROOT_PASSWORD: ${PHOTOPRISM_MARIADB_ROOT_PASSWORD}
|
|
@ -15,6 +15,16 @@ docker-compose exec app restic snapshots -H <HOSTNAME>
|
|||
docker-compose exec app restic restore --include /path/to/file <ID>
|
||||
```
|
||||
|
||||
List snapshots
|
||||
```
|
||||
docker compose run --rm backup snapshots
|
||||
```
|
||||
|
||||
View files uploaded in Backblaze
|
||||
|
||||
- In local, download via `brew install b2-tools`
|
||||
- In server
|
||||
|
||||
## Known issues
|
||||
```
|
||||
Fatal: config or key 2327d55bb96f4cab846b07cc8ffe5906c88c3e657f326a506ccfcf95cd8fd1e7 is damaged: ciphertext verification failed
|
||||
|
|
Loading…
Reference in New Issue