app: add librephotos

This commit is contained in:
Nicolas Meienberger 2022-10-12 21:26:47 +02:00
parent 0627e93e9d
commit b0dedd1f6a
9 changed files with 35 additions and 10 deletions

View File

@ -1,7 +1,7 @@
{ {
"$schema": "../schema.json", "$schema": "../schema.json",
"name": "LibrePhotos", "name": "LibrePhotos",
"port": 8110, "port": 8132,
"available": true, "available": true,
"exposable": true, "exposable": true,
"id": "librephotos", "id": "librephotos",

0
apps/librephotos/data/cache/.gitkeep vendored Normal file
View File

View File

View File

View File

@ -22,7 +22,7 @@ http {
location ~ ^/(api|media)/ { location ~ ^/(api|media)/ {
proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host __backend_name__; proxy_set_header Host librephotos-backend;
include uwsgi_params; include uwsgi_params;
proxy_pass http://librephotos-backend:8001; proxy_pass http://librephotos-backend:8001;
} }

View File

View File

@ -6,7 +6,7 @@ services:
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- ${APP_DATA_DIR}/data/scan:/data - ${APP_DATA_DIR}/data/scan:/data
- ${ROOT_FOLDER_HOST}/media/data/images:/protected_media - ${APP_DATA_DIR}/data/protected_media:/protected_media
- ${APP_DATA_DIR}/data/proxy/nginx.conf:/etc/nginx/nginx.conf:ro - ${APP_DATA_DIR}/data/proxy/nginx.conf:/etc/nginx/nginx.conf:ro
ports: ports:
- ${APP_PORT}:80 - ${APP_PORT}:80
@ -17,19 +17,20 @@ services:
- tipi_main_network - tipi_main_network
librephotos-db: librephotos-db:
image: postgres:13 image: postgres:14
container_name: librephotos-db container_name: librephotos-db
restart: unless-stopped restart: unless-stopped
environment: environment:
- POSTGRES_USER=tipi POSTGRES_PASSWORD: ${LIBREPHOTOS_DB_PASSWORD}
- POSTGRES_PASSWORD=${LIBREPHOTOS_DB_PASSWORD} POSTGRES_USER: tipi
- POSTGRES_DB=librephotos POSTGRES_DB: librephotos
volumes: volumes:
- ${APP_DATA_DIR}/data/db:/var/lib/postgresql/data - ${APP_DATA_DIR}/data/db:/var/lib/postgresql/data
command: postgres -c fsync=off -c synchronous_commit=off -c full_page_writes=off -c random_page_cost=1.0 command: postgres -c fsync=off -c synchronous_commit=off -c full_page_writes=off -c random_page_cost=1.0
#Checking health of Postgres db #Checking health of Postgres db
healthcheck: healthcheck:
test: psql -U tipi -d librephotos -c "SELECT 1;" # test: psql -U tipi -d librephotos -c "SELECT 1;"
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
interval: 5s interval: 5s
timeout: 5s timeout: 5s
retries: 5 retries: 5
@ -51,7 +52,7 @@ services:
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- ${APP_DATA_DIR}/data/scan:/data - ${APP_DATA_DIR}/data/scan:/data
- ${ROOT_FOLDER_HOST}/media/data/images:/protected_media - ${APP_DATA_DIR}/data/protected_media:/protected_media
- ${APP_DATA_DIR}/data/logs:/logs - ${APP_DATA_DIR}/data/logs:/logs
- ${APP_DATA_DIR}/data/cache:/root/.cache - ${APP_DATA_DIR}/data/cache:/root/.cache
environment: environment:
@ -64,7 +65,7 @@ services:
- DB_NAME=librephotos - DB_NAME=librephotos
- DB_USER=tipi - DB_USER=tipi
- DB_PASS=${LIBREPHOTOS_DB_PASSWORD} - DB_PASS=${LIBREPHOTOS_DB_PASSWORD}
- DB_HOST= - DB_HOST=librephotos-db
- DB_PORT=5432 - DB_PORT=5432
- REDIS_HOST=librephotos-redis - REDIS_HOST=librephotos-redis
- REDIS_PORT=6379 - REDIS_PORT=6379

View File

@ -0,0 +1,24 @@
- The [demo is available here](https://demo2.librephotos.com/). User is ```demo```, password is ```demo1234```.
- You can watch development videos on [Niaz Faridani-Rad's channel](https://www.youtube.com/channel/UCZJ2pk2BPKxwbuCV9LWDR0w)
- You can join our [Discord](https://discord.gg/xwRvtSDGWb).
![](https://github.com/LibrePhotos/librephotos/blob/dev/screenshots/mockups_main_fhd.png?raw=true)
<sub>Mockup designed by rawpixel.com / Freepik</sub>
## Installation
Step-by-step installation instructions are available in our [documentation](https://docs.librephotos.com/1/)
## Features
- Support for all types of photos including raw photos
- Support for videos
- Timeline view
- Scans pictures on the file system
- Multiuser support
- Generate albums based on events like "Thursday in Berlin"
- Face recognition / Face classification
- Reverse geocoding
- Object / Scene detection
- Semantic image search
- Search by metadata