Immich Public Proxy 项目教程
1. 项目目录结构及介绍
Immich Public Proxy 项目的目录结构如下:
immich-public-proxy/
├── .github/
├── app/
├── docs/
├── .dockerignore
├── .gitignore
├── Dockerfile
├── LICENSE
├── README.md
├── docker-compose.yml
└── config.json
.github/
: 存放 GitHub 专用的配置文件。app/
: 包含项目的源代码。docs/
: 存放项目文档。.dockerignore
: 指定 Docker 构建时需要忽略的文件。.gitignore
: 指定 Git 提交时需要忽略的文件。Dockerfile
: 用于构建项目的 Docker 镜像。LICENSE
: 项目的许可文件,本项目采用 AGPL-3.0 许可。README.md
: 项目的说明文件,包含项目的基本信息和如何使用。docker-compose.yml
: 用于定义和运行多容器 Docker 应用。config.json
: 项目的配置文件,用于自定义项目的行为。
2. 项目的启动文件介绍
项目的启动主要通过 docker-compose.yml
文件来管理。以下是 docker-compose.yml
的基本内容:
version: '3'
services:
proxy:
image: immich-public-proxy
ports:
- "8080:80"
environment:
- IMMICH_URL=http://immich:8080
volumes:
- ./config.json:/app/config.json:ro
depends_on:
- immich
在此配置文件中,定义了一个服务 proxy
,它使用 immich-public-proxy
镜像,映射了容器的 80 端口到主机的 8080 端口。IMMICH_URL
环境变量用于设置 Immich 实例的内部 URL。volumes
部分用于挂载本地的 config.json
配置文件到容器内。
启动项目时,你需要在项目根目录下执行以下命令:
docker-compose up -d
这将以后台模式启动 Docker 容器。
3. 项目的配置文件介绍
项目的配置文件为 config.json
。此文件用于自定义 Immich Public Proxy 的行为。以下是一个 config.json
的示例内容:
{
"ipp": {
"showHomePage": false,
"responseHeaders": {
"Cache-Control": "no-cache"
},
"singleImageGallery": true,
"downloadOriginalPhoto": false,
"showGalleryTitle": true,
"allowDownloadAll": 1,
"customInvalidResponse": {
"status": 404,
"message": "Not Found"
}
},
"lightGallery": {
"controls": true,
"download": false,
"mobileSettings": {
"controls": false,
"showCloseIcon": true,
"download": false
}
}
}
在此配置文件中,可以设置以下选项:
showHomePage
: 是否显示主页。responseHeaders
: 自定义响应头部。singleImageGallery
: 是否对于单个图片显示画廊页面。downloadOriginalPhoto
: 是否允许下载原始图片。showGalleryTitle
: 是否显示画廊标题。allowDownloadAll
: 是否允许下载所有文件。customInvalidResponse
: 自定义无效响应。
根据需要修改 config.json
文件后,重启 Docker 容器以应用更改。
以上就是 Immich Public Proxy 项目的目录结构、启动文件和配置文件的介绍。