diff --git a/photoprism/docker-compose.yml b/photoprism/docker-compose.yml index 71a1c8a..9c76dd7 100644 --- a/photoprism/docker-compose.yml +++ b/photoprism/docker-compose.yml @@ -108,6 +108,30 @@ services: MARIADB_PASSWORD: ${PHOTOPRISM_DATABASE_PASSWORD} MARIADB_ROOT_PASSWORD: "insecure" + ts-filebrowser: + image: tailscale/tailscale:latest + hostname: photoprism-files + environment: + - TS_AUTHKEY=${TAILSCALE_OAUTH_KEY} + - TS_EXTRA_ARGS=--advertise-tags=${TAILSCALE_TAGS} + - TS_STATE_DIR=/var/lib/tailscale + - TS_SERVE_CONFIG=/config/filebrowser.json + volumes: + - ts-photoprism-files-state:/var/lib/tailscale + - /dev/net/tun:/dev/net/tun + - ./ts-filebrowser/config:/config + cap_add: + - net_admin + - sys_module + restart: unless-stopped + + filebrowser: + image: filebrowser/filebrowser:latest + volumes: + - filebrowser-db:/database + - ./filebrowser-config:/config + - /data:/srv + watchtower: restart: unless-stopped image: containrrr/watchtower @@ -120,4 +144,8 @@ services: volumes: ts-photoprism-state: + driver: local + ts-photoprism-files-state: + driver: local + filebrowser-db: driver: local \ No newline at end of file diff --git a/photoprism/ts-filebrowser/config/filebrowser.json b/photoprism/ts-filebrowser/config/filebrowser.json new file mode 100644 index 0000000..cc86026 --- /dev/null +++ b/photoprism/ts-filebrowser/config/filebrowser.json @@ -0,0 +1,20 @@ +{ + "TCP": { + "443": { + "HTTPS": true + } + }, + "Web": { + "${TS_CERT_DOMAIN}:443": { + "Handlers": { + "/": { + "Proxy": "http://filebrowser:80" + } + } + } + }, + "AllowFunnel": { + "${TS_CERT_DOMAIN}:443": false + } + } +