使用docker搭建seafile服務器


工作需要在單位和家里的不同電腦上同步指定文件夾及其內容。對比了一些解決方案,最終還是選擇熟悉的seafile來做。
需要按照官方文檔進行seafile的安裝,選擇官方推薦的docker方式快速部署。
由於網絡因素,直接訪問國外源非常慢甚至超時退出無法完成,所以我下面嘗試替換成國內阿里雲的源,實際體驗速度提升非常明顯。

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的優勢。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM