This commit is contained in:
msnie
2025-03-12 14:23:04 +01:00
parent 58373dd0e3
commit bfe63de0c3
11 changed files with 170 additions and 14 deletions
+1 -1
View File
@@ -128,4 +128,4 @@ DB_DATABASE_NAME=immich
# # Examples: http://localhost:3001, http://immich-api.example.com, etc
# ####################################################################################
# IMMICH_API_URL_EXTERNAL=https://imm.knast.cc
IMMICH_API_URL_EXTERNAL=https://imm.knast.cc
+13 -13
View File
@@ -30,7 +30,7 @@ version: "3.8"
# depends_on:
# - redis
# - database
# restart: always
# restart: unless-stopped
# immich-machine-learning:
# networks:
@@ -46,7 +46,7 @@ version: "3.8"
# - /srv/immich/model-cache:/cache
# env_file:
# - .env
# restart: always
# restart: unless-stopped
# redis:
# networks:
@@ -57,7 +57,7 @@ version: "3.8"
# # image: docker.io/redis:6.2-alpine@sha256:e3b17ba9479deec4b7d1eeec1548a253acc5374d68d3b27937fcfe4df8d18c7e
# # healthcheck:
# # test: redis-cli ping || exit 1
# restart: always
# restart: unless-stopped
# database:
# networks:
@@ -77,7 +77,7 @@ version: "3.8"
# # start_interval: 30s
# # start_period: 5m
# command: ["postgres", "-c" ,"shared_preload_libraries=vectors.so", "-c", 'search_path="$$user", public, vectors', "-c", "logging_collector=on", "-c", "max_wal_size=2GB", "-c", "shared_buffers=512MB", "-c", "wal_compression=on"]
# restart: always
# restart: unless-stopped
# volumes:
# model-cache:
@@ -98,7 +98,7 @@ services:
- redis
- database
# - typesense
restart: always
restart: unless-stopped
immich-microservices:
networks:
@@ -114,7 +114,7 @@ services:
- redis
- database
# - typesense
restart: always
restart: unless-stopped
immich-machine-learning:
networks:
@@ -126,7 +126,7 @@ services:
- /srv/immich/model-cache:/cache
env_file:
- .env
restart: always
restart: unless-stopped
immich-web:
networks:
@@ -136,11 +136,11 @@ services:
entrypoint: ["/bin/sh", "./entrypoint.sh"]
env_file:
- .env
restart: always
restart: unless-stopped
labels:
- traefik.enable=true
- "traefik.http.routers.imm.entrypoints=websecure"
- "traefik.http.routers.imm.rule=Host(`imm.$DOMAIN_NAME`)"
- "traefik.http.routers.imm.rule=Host(`imm.knast.cc`)"
- "traefik.http.routers.imm.tls.certresolver=letsencr"
# - "traefik.http.services.imm.loadbalancer.server.port=32400"
@@ -156,14 +156,14 @@ services:
# driver: none
# volumes:
# - /srv/immich/tsdata:/data
# restart: always
# restart: unless-stopped
redis:
container_name: immich_redis
image: redis:6.2
networks:
- traefik
restart: always
restart: unless-stopped
database:
networks:
@@ -179,7 +179,7 @@ services:
PG_DATA: /var/lib/postgresql/data
volumes:
- /srv/immich/pgdata:/var/lib/postgresql/data
restart: always
restart: unless-stopped
immich-proxy:
networks:
@@ -196,7 +196,7 @@ services:
driver: none
depends_on:
- immich-server
restart: always
restart: unless-stopped
# OFFICIAL
+50
View File
@@ -0,0 +1,50 @@
# To see all available options, please visit the docs:
# https://docs.fossorial.io/Pangolin/Configuration/config
app:
dashboard_url: "http://localhost:3002"
log_level: "info"
save_logs: false
domains:
domain1:
base_domain: "example.com"
cert_resolver: "letsencrypt"
server:
external_port: 3000
internal_port: 3001
next_port: 3002
internal_hostname: "pangolin"
session_cookie_name: "p_session_token"
resource_access_token_param: "p_token"
resource_session_request_param: "p_session_request"
traefik:
http_entrypoint: "web"
https_entrypoint: "websecure"
gerbil:
start_port: 51820
base_endpoint: "localhost"
block_size: 24
site_block_size: 30
subnet_group: 100.89.137.0/20
use_subdomain: true
rate_limits:
global:
window_minutes: 1
max_requests: 100
users:
server_admin:
email: "admin@example.com"
password: "Password123!"
flags:
require_email_verification: false
disable_signup_without_invite: true
disable_user_create_org: true
allow_raw_resources: true
allow_base_domain_resources: true
+50
View File
@@ -0,0 +1,50 @@
# To see all available options, please visit the docs:
# https://docs.fossorial.io/Pangolin/Configuration/config
app:
dashboard_url: "http://localhost:3002"
log_level: "info"
save_logs: false
domains:
domain1:
base_domain: "example.com"
cert_resolver: "letsencrypt"
server:
external_port: 3000
internal_port: 3001
next_port: 3002
internal_hostname: "pangolin"
session_cookie_name: "p_session_token"
resource_access_token_param: "p_token"
resource_session_request_param: "p_session_request"
traefik:
http_entrypoint: "web"
https_entrypoint: "websecure"
gerbil:
start_port: 51820
base_endpoint: "localhost"
block_size: 24
site_block_size: 30
subnet_group: 100.89.137.0/20
use_subdomain: true
rate_limits:
global:
window_minutes: 1
max_requests: 100
users:
server_admin:
email: "admin@example.com"
password: "Password123!"
flags:
require_email_verification: false
disable_signup_without_invite: true
disable_user_create_org: true
allow_raw_resources: true
allow_base_domain_resources: true
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
+AFwMsyZ1Wg/UYXZKkkV0K771bwl6950dcFAL23Js0s=
+54
View File
@@ -0,0 +1,54 @@
name: pangolin
services:
pangolin:
image: fosrl/pangolin:latest
container_name: pangolin
restart: unless-stopped
volumes:
- ./config:/app/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3001/api/v1/"]
interval: "3s"
timeout: "3s"
retries: 5
gerbil:
image: fosrl/gerbil:latest
container_name: gerbil
restart: unless-stopped
depends_on:
pangolin:
condition: service_healthy
command:
- --reachableAt=http://gerbil:3003
- --generateAndSaveKeyTo=/var/config/key
- --remoteConfig=http://pangolin:3001/api/v1/gerbil/get-config
- --reportBandwidthTo=http://pangolin:3001/api/v1/gerbil/receive-bandwidth
volumes:
- ./config:/var/config
cap_add:
- NET_ADMIN
- SYS_MODULE
ports:
- 51820:51820/udp
- 443:443 # Port for traefik because of the network_mode
- 80:80 # Port for traefik because of the network_mode
traefik:
image: traefik:v3.3.3
container_name: traefik
restart: unless-stopped
network_mode: service:gerbil # Ports appear on the gerbil service
depends_on:
pangolin:
condition: service_healthy
command:
- --configFile=/etc/traefik/traefik_config.yml
volumes:
- ./config/traefik:/etc/traefik:ro # Volume to store the Traefik configuration
- ./config/letsencrypt:/letsencrypt # Volume to store the Let's Encrypt certificates
networks:
default:
driver: bridge
name: pangolin
+1
Submodule pangolin/pangolin added at eb73da8aa0