docker安装immich,搭建家庭私有相册,实现手机相册同步备份

news/2025/1/4 15:21:51/文章来源:https://www.cnblogs.com/useraka/p/18646312

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同局域网访问,同步手机相册

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/862467.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux装逼玩法之wttr.in天气

什么是 wttr.in? wttr.in 是一个基于 Web 的命令行天气服务,由 Igor Chubin 开发。它通过调用OpenWeatherMap 等天气服务的 API,提供了简洁、直观的天气信息展示。 Linux使用Curl命令可快速获取天气信息查询指定城市的天气[Wed Jan 01 20:38:53 root@localhost ~ ]# curl wt…

vmware下载安装配置

vmware下载安装配置 下载 https://www.vmware.com/ # 官网 https://www.broadcom.com/ # Broadcom官网 https://www.vmware.com/products/desktop-hypervisor/workstation-and-fusion # VMware官网虚拟机下载页 https://www.filehorse.com/download-v…

软件安全测试

一、网络协议基础 1、网络模型 我们把一些过程封装到一起,称为“模型”,如下:把北京中的4个步骤封装到一起,就是1个模型了。 (1)网络模型-OSI OSl(Open System Interconnection 开放系统互联)参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体…

开拓计划21/2025集训作业表3 - 倍增ST表LCA次小生成树

开拓计划21/2025集训作业表3 - 倍增&ST表&LCA&次小生成树 倍增&ST表 概念Q:倍增是什么? A:倍增,顾名思义是成倍增长的意思,它利用了二进制的性质和预处理(俗称打表)的思想,在 \(O(\log n)\) 内完成一些操作。 Q:ST表是什么? A:ST表主要用于解决RMQ(…

系统管理体系之进程管理

系统管理体系之进程管理 1. 进程名字 含义程序 安装包,程序代码,app,存放在磁盘上面.进程⭐️ 运行起来的程序,命令,服务(远程连接服务,网络服务)都可以称作进程。 运行在内存中。守护进程 守护进程, 一直运行的进程. 也可以叫做服务.2. 进程分类(异常进程) 2.1 僵尸进程⭐️⭐…

系统管理之服务管理---管理命令

1. 系统管理之服务管理---管理命令systemctl 管理服务开机自启动管理正在运行的服务.旧版本的系统:Centos 5.x 6.x 需要使用service 命令检查 sshd 远程连接服务状态systemctl status sshd systemctl status 单个或多个服务名如何设置开启开机自启动 systemctl enable sshd 当…

夜之向日葵

2024 ECF 游记 Day 0 我早就预感到 ecf 要寄,但没想到寄得这么彻底。 比赛之前,我去做了去年 ecf 的题目,发现里面的可做题全部都是贪心,性质和结论题。众所周知,chino 最不擅长的题目类型就是这些。 同时,因为周一周二要考大物和数分,比赛前的一周几乎没有训练。 于是就…

网络流初步

网络流初步(脑部整理) 呜呜呜,家人们也是学上网络流了。 咸鱼起手,你反应得过来吗? 英语不太好(老英不会看窝博客吧) What is 网络流?概述 网络\((network)\)是指一个特殊的有向图 \(G=(V,E)\),其与一般有向图的不同之处在于有容量和源汇点。$E $中的每条边 $ (u, v)$ 都…

金砖技能大赛-内存取证

检材链接 :https://pan.baidu.com/s/1tYgIicCqJExmaMLYa3YeSA 提取码:lulu按照惯例先打印出信息 1.从内存中获取到用户admin的密码并且破解密码,以Flag{admin,password} 形式提交(密码为 6 位); 先使用lsadump指令看看python2 vol.py -f /文件路径/文件 hashdump最后一个是…

script 标签放在 HTML 文档的 body 内底部

以下是将 <script> 标签放在 HTML 文档的 <body> 内底部的几个重要原因: 1. 页面加载顺序和性能优化原理:当浏览器解析 HTML 文档时,它会按顺序执行遇到的元素。如果 <script> 标签位于 <head> 中或 <body> 的顶部,浏览器会在下载和执行脚本…

折腾笔记[4]-cuda的hello-world

在window11上搭建cuda开发环境并编译hello world程序;摘要 在window11上搭建cuda开发环境并编译hello world程序; 关键信息编译器:cuda nvcc 12.4.131 平台:windows11原理简介 cuda简介 CUDA(Compute Unified Device Architecture,统一计算架构)是由英伟达所推出的一种集成技术…

13. 滑块控件

一、抽象滑块QScrollBar、QSlider 和 QDail 都是从 QAbstractSlider 类继承而来的,因此它们的多数方法是相同的。我们可以在终端中使用 pip 安装 pyside6 模块。 pip install pyside6QAbstractSlider 类的常用方法如下: # 实例方法 orientation() -> Qt.Orientation …