基于Docker+Seafile搭建私人云存儲(chǔ)

在墻里的同學(xué)們不難發(fā)現(xiàn),現(xiàn)在除了百度云以外,國(guó)內(nèi)幾乎沒(méi)有什么公開的云盤服務(wù)了,有時(shí)我們想在自己的不同設(shè)備之間、或者給客戶共享點(diǎn)資料非常困難,試想一下如果能有自己私有云存儲(chǔ),并且能支持自動(dòng)同步本地?cái)?shù)據(jù)還能輕松與他人共享,是件多面嗨皮的事。本文介紹一下如何利用華為云,基于Docker+Seafile搭建私人云存儲(chǔ)。

開通華為云服務(wù)

工欲善其事,必先利其器。如何購(gòu)買華為云,這里就不贅述了,詳見官網(wǎng)介紹,總之乖乖按照官方指引輕松幾步就搞定。筆者雙11把手打折了,索性只買了1C1G的彈性云服務(wù)器(首月只要30+元),預(yù)裝了Centos7.2操作系統(tǒng)。通過(guò)“管理控制臺(tái)”進(jìn)入彈性云服務(wù)器界面,可以遠(yuǎn)程登錄主機(jī),如下圖所示。

20171114225111.png

安裝Docker平臺(tái)

使用共有云的一個(gè)好處就是OS創(chuàng)建好了以后什么都不需要配置就可以連接公網(wǎng),比在自家電腦上搭VM方便千百倍。彈性云服務(wù)器已經(jīng)配置好了國(guó)內(nèi)的yum源,通過(guò)yum安裝docker只需要一個(gè)命令即可

yum install -y docker

安裝完成后,執(zhí)行如下命令啟動(dòng)docker平臺(tái),并查看執(zhí)行結(jié)果

service docker start
docker ps
20171114230514.png

部署Seafile容器

Seafile是業(yè)界比較有名的開源云存儲(chǔ)應(yīng)用服務(wù),Docker Hub上有現(xiàn)成的鏡像,詳情參見。
執(zhí)行pull拉取鏡像:

docker pull docker.io/jenserat/seafile

不到一分鐘鏡像就拉取到本地了?;谶@個(gè)鏡像首次創(chuàng)建容器需要讓容器從網(wǎng)關(guān)拉取一些額外的配置文件,運(yùn)行如下命令創(chuàng)建容器,并開啟交互模式:

docker run -t -i \
  -p 10001:10001 \
  -p 12001:12001 \
  -p 8000:8000 \
  -p 8080:8080 \
  -p 8082:8082 \
  -v /srv/seafile:/opt/seafile \
  jenserat/seafile -- /bin/bash

此命令將容器內(nèi)的/opt/seafile映射到宿主機(jī)的/srv/seafile目錄,用于保存后續(xù)步驟下載的配置,另外映射了幾個(gè)端口到宿主機(jī),其中8000是訪問(wèn)UI用的,8082是上傳下載文件用的,其他端口不知道干嘛的。

  • 容器啟動(dòng)后,在命令行執(zhí)行download-seafile下載Seafile的主要配置文件
  • 下載完成后,執(zhí)行/opt/seafile/seafile-server-5.*/setup-seafile.sh執(zhí)行安裝向?qū)?,記住不要修改默認(rèn)的存儲(chǔ)位置,其他看情況改。
  • 執(zhí)行/opt/seafile/seafile-server-latest/seafile.sh start來(lái)啟動(dòng)Seafile主進(jìn)程
  • 執(zhí)行/opt/seafile/seafile-server-latest/seahub.sh啟動(dòng)WEB UI
  • 配置完成后執(zhí)行exit退出。
    以上是首次啟動(dòng)容器的步驟,接下來(lái)就不需要這么麻煩了,執(zhí)行如下命令啟動(dòng)終極容器,不需要交互式命令,用-d參數(shù)讓他在后臺(tái)安靜的跑。
docker run -d \
  --name seafile \
  -p 10001:10001 \
  -p 12001:12001 \
  -p 8000:8000 \
  -p 8080:8080 \
  -p 8082:8082 \
  -v /srv/seafile:/opt/seafile \
  -e autostart=true \
  jenserat/seafile

設(shè)置安全組

到這里我們就已經(jīng)在彈性云服務(wù)器上部署好了一個(gè)Seafile私有云存儲(chǔ),這時(shí)候我們嘗試訪問(wèn)這臺(tái)機(jī)器的8000端口,你會(huì)發(fā)現(xiàn)端口沒(méi)有響應(yīng)。這是因?yàn)樵浦鳈C(jī)為了安全考慮自動(dòng)設(shè)置了VPC(虛擬子網(wǎng))和安全組,也就相當(dāng)于我們說(shuō)的防火墻,接下來(lái)需要在安全組里加上相應(yīng)的規(guī)則,讓云主機(jī)放通我們的服務(wù)端口。
打開“管理控制臺(tái)”頁(yè)面,選擇“網(wǎng)絡(luò)”->“私有云”,選擇“安全組”,如下圖
選擇“新建安全組”,添加規(guī)則,將我們要用到的端口都添加到“入方向”

20171114233641.png

此時(shí)我們?cè)賴L試訪問(wèn)服務(wù)器的8000端口,如:http://122.112.204.xxx:8000,就能看到Seafile的登錄界面了,用我們前面初始化的管理賬號(hào)即可登錄
20171114234141.png

20171114234502.png

之后我們就可以盡情的享受私有云存儲(chǔ)帶來(lái)的便利了,從Seafile官網(wǎng)上可以下載到Windows、Mac等的客戶端,輕松實(shí)現(xiàn)本地文件自動(dòng)同步,一點(diǎn)不遜色百度云盤。

綁定域名

如果覺(jué)得通過(guò)IP訪問(wèn)不夠便利,還可以自己申請(qǐng)一個(gè)域名,然后通過(guò)配置DNS解析直接通過(guò)域名訪問(wèn),這類教程網(wǎng)上一搜一大把,租個(gè)域名一年不過(guò)也就幾十塊錢。綁好域名后的效果類似于


20171114234914.png

大功告成

原文鏈接:《基于Docker+Seafile搭建私人云存儲(chǔ)》

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Docker — 云時(shí)代的程序分發(fā)方式 要說(shuō)最近一年云計(jì)算業(yè)界有什么大事件?Google Compute Engi...
    ahohoho閱讀 15,874評(píng)論 15 147
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,696評(píng)論 19 139
  • 轉(zhuǎn)載自 http://blog.opskumu.com/docker.html 一、Docker 簡(jiǎn)介 Docke...
    極客圈閱讀 10,771評(píng)論 0 120
  • 一、Docker 簡(jiǎn)介 Docker 兩個(gè)主要部件:Docker: 開源的容器虛擬化平臺(tái)Docker Hub: 用...
    R_X閱讀 4,523評(píng)論 0 27
  • 孟子曰:愛(ài)人不親反其仁,治人不治反其智,禮人不答反其敬。行有不得者,皆反求諸己,其身正而天下歸之。詩(shī)云,永言配命,...
    濟(jì)之閱讀 226評(píng)論 0 0

友情鏈接更多精彩內(nèi)容