1.安装docker compose
2.下载必须的文件
(1)首先在当前用户下创建目录,以存放将要下载的文件
mkdir ./immich-app
cd ./immich-app
(2)从远程仓库下载docker-compose.yml和example.env文件到immich-app目录,或者从浏览器下载然后移动到该目录,example.env改名为.env。
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
3.修改.env中的自定义变量,docker-compose.yml中的内容一般不需要修改。
UPLOAD_LOCATION = /mnt/myfolder
DB_DATALOCATION = ./postgres
DB_PASSWORD = psw123
其中,上述例子中,UPLOAD_LOCATION存储上传的图片视频数据,设置在容量较大的、相对可靠的机械盘目录/mnt/myfolder,DB_DATALOCATION设置为速度较快的SSD盘本地目录postgres,如果设置为Windows系统SMB协议下共享的目录,且该目录在NTFS文件系统中,则会报错导致数据库启动失败!
docker-compose.yml文件内一共配置了四个容器提供服务:immich-server(相册服务)、immich-machine-learning(相册机器学习模块)、redis(缓存)、database(数据库),其关键配置项说明:
container_name: immich_server #自定义的容器名称
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} #镜像地址及版本
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload #将容器内的/usr/src/app/upload地址,映射到 UPLOAD_LOCATION 环境变量配置的地址,一般为本地挂载目录或NAS目录
env_file:
- .env #使用.env文件中的环境变量
ports:
- '2283:8888' #将容器内默认的2283端口映射到8888端口,即外部使用8888端口访问容器
4.启动容器,下载容器镜像
docker compose up -d
如果默认的docker镜像源无法访问,则可以修改镜像源:
打开配置文件 vi /etc/docker/daemon.json
在此处添加新的源或修改以前的源:
{
"registry-mirrors":[
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn"
]
}
重新加载配置并重启docker服务使更改生效:
sudo systemctl daemon-reload
sudo systemctl restart docker
5.查看容器的运行日志,排除异常
docker compose logs
6.浏览器访问
http://IP地址:2283
2283为默认端口,如果在docker-compose.yml中修改过,则使用改后的端口号。
7.手机app同局域网访问,同步手机相册