家用云相册方案探索之Immich
Immich官网:Immich
1、安装
按照官网的Dcoker安装教程来很简单:https://immich.app/docs/install/docker-compose
2、注意
建议Docker更新到比较新的版本, 不然会有一个健康检查的报错:
If you get an error can’t set healthcheck.start_interval as feature require Docker Engine v25 or later, it helps to comment out the line for start_interval in the database section of the docker-compose.yml file.
3、访问
安装完成之后访问 :http://localhost:2283。注册管理员账号并登录。
4、客户端
Immich同时提供App客户端,我用的iOS,直接app store下载Immich
5、上传图片
内网可以直接连接电脑主机的ip,浏览器输入http://your-local-ip:2283/api 然后连接,再输入刚刚注册的管理员账号登录就可以进入app页面,然后上传图片,就可以在电脑上看到图片了。
6、外网访问
外网访问的话,我这里没有拿到公网IP,只能用内网穿透了。 :
已经有很多成熟的内网穿透的产品了,网上一搜很多。我本来有一个限制的服务器,这里用开源免费的方案
https://github.com/ffay/lanproxy 。
6.1 在服务器上安装lanproxy
还是docker安装 lanproxy ,创建docker-compose.yml文件:
version: '3.1'
services:lanproxy-client:image: franklin5/lanproxy-servercontainer_name: lanproxy-serverenvironment:# 配置后台管理账号,默认admin- LANPROXY_USERNAME=admin# 配置后台管理密码,默认admin- LANPROXY_PASSWORD=adminvolumes:# 用于保存创建的配置文件,避免重启服务后配置消失- /usr/local/docker/lanproxy-server/config-data:/root/.lanproxyports:- 8090:8090- 4900:4900- 4993:4993- 9000-9100:9000-9100restart: always
启动:
docker compose up -d
记得在防火墙中把8090端口放开。
然后在浏览器访问:http://your-ip:8090
6.2 在lanproxy管理页面中添加一个客户端
6.3 内网客户端安装配置
下载:
git clone https://github.com/frank-lam/lanproxy-client.git
修改 lanproxy-client/distribution/proxy-client-0.1/conf/config.properties 文件中的配置:
client.key=88888888 # 这里是在lanproxy后台配置的密钥。改成刚刚添加的客户端密钥ssl.enable=false
ssl.jksPath=test.jks
ssl.keyStorePassword=123456 server.host=your-server-ip # 服务器的ip,也支持域名
server.port=4900 server.port=4900
这里注意也要在防火墙中放开4900端口
6.4 启动客户端
在lanproxy-client根目录下执行:sh start.sh
start the lanproxy ...
-e Starting the proxy client ...started
PID: 49149
(base) xp@xp-mac lanproxy-client %
检查一下服务端控制台发现客户端正常在线了
6.5 配置端口映射
公网端口填写服务器上可用的端口,我这里用的事9096,并在防火墙中放开。内网主机IP填写主机的IP加Immich的2283 端口
6.6 使用
在Immich 客户端中使用服务的ip加配置的端口就可以访问到主机上的Immich服务了。