通過Docker部署NextCloud和ONLYOFFICE以實現(xiàn)類似Dropbox網(wǎng)盤功能

需要一個類似Dropbox類似的共享服務器,經(jīng)過分析后選擇使用NextCloud,直接在Ubuntu服務器上通過Docker來實現(xiàn),同時希望提供MS Office文檔的在線編輯功能蜀变,故同時給它集成ONLYOFFICE。

1. 安裝NextCloud

這里假定NextCloud服務使用8080端口介评,然后數(shù)據(jù)卷的名稱為nextcloud_data库北,容器名稱為tstnextcloud,容器每次都自動重啟,命令如下:

#拉取鏡像
sudo docker pull nextcloud
#創(chuàng)建容器
sudo docker run -d --name tstnextcloud -p 8080:80 -v nextcloud_data:/var/www/html nextcloud

安裝完成確認容器tstnextcloud啟動了后贤惯,可以通過如下URL訪問nextcloud,并按提示來進行初始化棒掠,假設我們的Docker服務器的IP為192.168.1.11
http://192.168.1.11:8080

2. NextCloud的LDAP集成的配置

這里假定NextCloud通過與Windows AD服務器192.168.1.12進行LDAP集成孵构,以使它能使用Windows AD的用戶賬號進行登錄
2.1 登錄后點擊右上角用戶圖標,然后選擇Apps

圖1. 打開Apps界面

在設置界面左側(cè)面板中選擇App bundles烟很,然后找到LDAP user and group backend并點擊Enable或者Download and enable按鈕下載(如果還沒有的話)并啟用它颈墅,使它成下圖所示可以關閉的Disable狀態(tài):
圖2. 啟用LDAP user and group backend

2.2 登錄后點擊右上角用戶圖標,然后選擇Administration Setting再在左側(cè)面板中找到LDAP/AD integration來配置LDAP的集成
圖3. 進入管理設置

2.3 填入服務器的相關信息雾袱,Windows服務器的地址或者名稱恤筛、端口號(可以點Detect Port按鈕進行自動檢測,默認是389)芹橡、憑據(jù)毒坛、以及Base DN(比如:DC=mydomain,DC=local)等然后點Continue按鈕進行一下步配置。
圖4. 配置LDAP服務器

2.4 用戶頁面的設置林说,可以指定僅搜索user類型煎殷,然后指定特定的安全組即可,只有選定的安全組中的用戶可以登錄NextCloud腿箩,如下圖所示:
圖5. 配置需要引入的用戶

2.5 配置登錄的時候使用的用戶名等豪直,這里我希望用戶用Windows用戶名和其郵箱地址均可登錄 ,故選擇了兩個珠移,可酌情選擇:
圖6. 指定可以用于登錄的用戶的憑據(jù)ID

2.6 指定會用于NextCloud的安全組的導入弓乙,導入后可以用于權限等的控制(可選,如果不在Windows AD上控制權限钧惧,這里可以忽略)
圖7. 指定從LDAP導入的安全組

如此操作后暇韧,如果沒有問題,在NextCloud的用戶界面中一會后即可看到相應導入的用戶和組浓瞪,并可進行登錄了锨咙。

3. 安裝ONLYOFFICE提供MS Office文檔的在線編輯功能

這里還是通過Docker的方式安裝,容器命名為tstonlyoffice追逮,使用端口號為8180酪刀,并使容器每次自動重啟,命令如下:

#拉取鏡像
sudo docker pull onlyoffice/documentserver:latest
#創(chuàng)建容器
sudo docker run -d --name tstonlyoffice -p 8180:80 --restart=always onlyoffice/documentserver

容器啟動后钮孵,可以通過下面URL查看并復制方框里的獲取密鑰的命令:
http://192.168.1.11:8180

圖8. 查看并復制方框中的取得密鑰的命令

將復制的命令放到Ubuntu主機上運行它骂倘,會顯示一個密鑰字串,復制它以進行下一步在NextCloud中的設置巴席。

4. 在NextCloud中配置ONLYOFFICE

4.1 按上面2.1的方式進入安裝啟用ONLYOFFICE
4.2 按上面2.2的方式找到ONLYOFFICE并點擊進行設置历涝,將前面步驟復制的密鑰粘貼到Secret key文本框里,把上面的ONLYOFFICE的服務器地址http://192.168.1.11:8180填到ONLYOFFICE Docs address文本框里,然后點擊保存即可荧库。

5. 將服務對互聯(lián)網(wǎng)進行開放

通過上面的安裝配置后堰塌,整個系統(tǒng)對于局域網(wǎng)內(nèi)已經(jīng)具備完全的服務能力了,接下來介紹如何將之以域名連接到互聯(lián)網(wǎng)上提供服務分衫,假定保持端口號不變场刑。
假定要將服務以域名lib.mydomain.com的域名對外提供服務,NextCloud端口依然保持8080蚪战,而ONLYOFFICE端口依然是8180牵现。
5.1 在路由器上進行NAT配置,將這兩個端口映射到內(nèi)網(wǎng)服務器上(TP-LINK路由器上可能叫虛擬服務器)
5.2 我們現(xiàn)在要編輯NextCloud容器上主目錄下config\config.php的配置邀桑,使這個域名得到允許瞎疼。
編輯這個文件的辦法有幾個,一個是通過docker cp命令把這個文件復制出來壁畸,編輯后再復制回去贼急,這里就不介紹了。
下面介紹一個不需要復制文件的方法:
5.2.1 運行下面命令捏萍,找到我們上面第1步里指定的數(shù)據(jù)卷nextcloud_data在Ubuntu主機里的位置:

sudo docker volume inspect nextcloud_data

上面命令會顯示nextcloud_data在主機里的具體位置:

[
    {
        "CreatedAt": "2024-10-14T03:39:40Z",
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/var/lib/docker/volumes/nextcloud_data/_data",
        "Name": "nextcloud_data",
        "Options": null,
        "Scope": "local"
    }
]

在主機上用cd命令切換到上面的Mountpoint里指定的路徑/var/lib/docker/volumes/nextcloud_data/_data

cd /var/lib/docker/volumes/nextcloud_data/_data

現(xiàn)在可以使用各種方式編輯當前目錄下config目錄里的config.php文件了竿裂,這里我用vi來編輯,也可以用nano等照弥,甚至可以使用1panel等Linux控制面板來直接編輯腻异。

vi config/config.php

打開文件后找到下面的小節(jié):

  'trusted_domains' =>
  array (
          0 => '192.168.1.11:8080',
  ),

給它加上一段關于域名的配置:

  'trusted_domains' =>
  array (
          0 => '192.168.1.11:8080',
          1 => 'lib.mydomain.com:8080',
  ),

重啟NextCloud容器后即可生效,最后還要按上面第4步的方法这揣,把ONLYOFFICE Docs address對應的也更新成對應的域名悔常,如下圖:

圖9. 更新ONLYOFFICE服務器地址

需要注意的是,如果防火墻是SonicWall的情況下给赞,上面ONLYOFFICE配置是沒辦法保存成功的机打,需要對使用到的兩個端口(8080和8180)進行Loopback的NAT設置,使跟服務器同在一個局域網(wǎng)的用戶可以通過互聯(lián)網(wǎng)IP來訪問局域網(wǎng)內(nèi)的服務器片迅,放一個截圖(圖上的Translated Destination是Ubuntu主機的IP地址也就是這里的192.168.1.11残邀,NextCloud Related Services80808180兩個TCP端口),這里不贅述過程柑蛇。

圖10. SonicWall的Loopback NAT設置

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末芥挣,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子耻台,更是在濱河造成了極大的恐慌空免,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件盆耽,死亡現(xiàn)場離奇詭異蹋砚,居然都是意外死亡扼菠,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進店門坝咐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來循榆,“玉大人,你說我怎么就攤上這事墨坚⊙硪” “怎么了?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵框杜,是天一觀的道長浦楣。 經(jīng)常有香客問我袖肥,道長咪辱,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任椎组,我火速辦了婚禮油狂,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘寸癌。我一直安慰自己专筷,他們只是感情好,可當我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布蒸苇。 她就那樣靜靜地躺著叶圃,像睡著了一般佩研。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天锌奴,我揣著相機與錄音,去河邊找鬼倒彰。 笑死握侧,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的鸳兽。 我是一名探鬼主播掂铐,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼揍异!你這毒婦竟也來了全陨?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤衷掷,失蹤者是張志新(化名)和其女友劉穎烤镐,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體棍鳖,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡炮叶,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年碗旅,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片镜悉。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡祟辟,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出侣肄,到底是詐尸還是另有隱情旧困,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布稼锅,位于F島的核電站吼具,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏矩距。R本人自食惡果不足惜拗盒,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望锥债。 院中可真熱鬧陡蝇,春花似錦、人聲如沸哮肚。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽允趟。三九已至恼策,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間潮剪,已是汗流浹背涣楷。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留鲁纠,地道東北人总棵。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像改含,于是被迫代替她去往敵國和親情龄。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容