工作需要在單位和家里的不同電腦上同步指定文件夾及其內容。對比了一些解決方案,最終還是選擇熟悉的seafile來做。
需要按照官方文檔進行seafile的安裝,選擇官方推薦的docker方式快速部署。
由於網絡因素,直接訪問國外源非常慢甚至超時退出無法完成,所以我下面嘗試替換成國內阿里雲的源,實際體驗速度提升非常明顯。
- 1.使用yum安裝依賴包
- 2.添加yum軟件源后安裝Docker
- 3.配置Docker國內鏡像加速
- 4.使用docker pull拉取seafile鏡像
- 5.使用docker run運行seafile服務
- 6.開啟防火牆策略/安全組策略
1.使用yum安裝依賴包
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2.添加yum軟件源后安裝Docker
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install docker-ce docker-ce-cli containerd.io
#啟動docker
systemctl start docker
3.配置Docker國內鏡像加速
vi /etc/docker/daemon.json
鏡像加速器地址: https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
打開以后你可以看見你的專屬加速器地址xxxxxxxx.mirror.aliyuncs.com
將其配置到daemon.json文件中:
{ "registry-mirrors": ["https://xxxxxxxx.mirror.aliyuncs.com"] }
需重啟docker服務:
systemctl daemon-reload
systemctl restart docker
4.使用docker pull拉取seafile鏡像
[root@alfredzhao-ecs01 ~]# docker pull seafileltd/seafile
Using default tag: latest
latest: Pulling from seafileltd/seafile
1489501ea318: Pull complete
c197ac8352c5: Pull complete
Digest: sha256:f0d42312c8935973515213677619b3fed877c7276949ac18e01804565a21ba7e
Status: Downloaded newer image for seafileltd/seafile:latest
docker.io/seafileltd/seafile:latest
注意:這里如果沒有上一步配置合理的registry-mirrors,速度就會非常慢。
5.使用docker run運行seafile服務
docker run -d --name seafile \
-e SEAFILE_SERVER_HOSTNAME=seafile.example.com \
-e SEAFILE_ADMIN_EMAIL=me@example.com \
-e SEAFILE_ADMIN_PASSWORD=your_password \
-v /opt/seafile-data:/shared \
-p 8000:8000 \
-p 8082:8082 \
seafileltd/seafile:latest
注意:這里端口的映射,早期文檔給的是一個端口,而我們需要配置兩個端口。服務器域名/郵箱/密碼都按照真實情況設置即可。
6.開啟防火牆策略/安全組策略
基本同上,根據實際需要修改創建seafile的參數即可,服務器域名可以去注冊一個,如果沒有,直接使用服務器的公網ip地址也可以。另外要檢查服務器的防火牆設置是否打開了對應端口。firewall-cmd --zone=public --add-port=8000/tcp --permanent
firewall-cmd --zone=public --add-port=8082/tcp --permanent
firewall-cmd --reload
注意:如果是ECS環境,要同時放開安全組策略對應端口的限制。
總結:最終我測試seafile在不同電腦之間同步指定文件夾,效果可以完全cover自己同步的需求。另外最大的感受是還沒有太多的了解細節,就部署完成上線使用了,這主要得益於docker的優勢。