[gphoto sync]google photo 本地備份 10 Docker container 的 NAS初始設置

 


Docker安裝


如果你想在NAS中運行本應用程序,那麼需要在 NAS  上做一些額外的步驟。

以下以Synology NAS 為例

首先,您需要從"套件中心"安裝 Docker Desktop



Docker 設定

在應用程式夾裡面開啟Docker,確認是否可以正常運行




若可以正常運行,則會顯示如下所示之畫面



檔案布置

因應用程式需要,我們必須將所需的資料夾以及檔案設定好
我們需要找到我們主機(NAS)需要被Container映射的兩個資料夾,"/storage"以及"/config"
Volumn
(container 資料夾)
用途
主機資料夾
(可以用戶需求自行設定)
/storage
用於下載Google Photo照片
/volume1/homes/<用戶名>/Photos/PhotoLibrary
/config
用於存放 client_secret.json 文件
/volume1/docker/config/gphotosync
我們在docker資料夾中,新增/config/gphotosync資料夾,存放client_secret.json檔案,如下所示



同時在homes/<用戶名>資料夾中新增Photos/PhotoLibrary資料夾,存放Google Photo照片


開啟NAS的SSH功能並連接

開啟NAS的SSH功能

由於在windows/mac上可以使用指令碼建立container,但NAS上目前還無法
因此我們需要開通NAS上的SSH功能,透過Windows/Mac的terminal來建立我們的Container

勾選"啟用SSH功能"
設定連接埠號碼,這邊以11為例



使用windows 透過SSH連接NAS


首先將 windows電腦與NAS置於同一個網域當中(同一個wifi/有線網路環境下)


打開power shell
輸入以下指令
ssh <NAS帳戶>@<local IP位置> -p <port號>
範例
ssh <NAS帳戶>@192.168.1.135 -p 11

輸入帳戶密碼後,可以看到以下介面,代表成功透過SSH功能使windows連接至NAS
 



部屬Docker Container及運行gphotos-sync應用程式


打開終端機
輸入以下指令

sudo docker run --name="GooglePhotosSync" -v /volume1/docker/config/gphotosync/:/config:rw -v /volume1/homes/<用戶名>/Photos/PhotoLibrary:/storage:rw -p 8080:8080 -it ghcr.io/gilesknap/gphotos-sync /storage
程式將會自動下載gphotos-sync container image
下載完成後,會進行應用程式授權
請複製url並在瀏覽器當中授權應用程式
詳細可以參考以下文章

#注意

若8080連接埠埠號已經被占用,可以試著換成其他埠號
以下以local host port 8083為例子
sudo docker run --name="GooglePhotosSync" -v /volume1/docker/config/gphotosync/:/config:rw -v  /volume1/homes/<用戶名>/Photos/PhotoLibrary:/storage:rw -p 8083:8080 -it ghcr.io/gilesknap/gphotos-sync /storage









授權成功
瀏覽器頁面


Terminal頁面


授權失敗
瀏覽器頁面



失敗原因
網路端口(port) 設定問題
請確保裝置與備份硬碟處於同一個網域下

解決方法
將"localhost"的網誌用ip域名替代



授權完成後,程式將自動下載檔案到您指定的資料夾內


參考資料:





留言