上篇我們分享了如何在 Windows / MacOS 環境使用IDE將社群版升級為企業版。相信對許多開發人員來說,更常見的情況是使用Docker以確保更可控的服務品質。
今天想跟大家分享的也是一隅常被詢問的升級環境:使用Docker運行Odoo!
Odoo 有提供官方Docker image:https://hub.docker.com/_/odoo
也可以在Github上的Repository找到相關的dockerfile資訊: https://github.com/odoo/docker/
有想了解如何使用 Docker 快速運行 Odoo 的夥伴,請大聲留言告訴我們!!
在開始之前先跟大家複習升級步驟原則:
- 購買企業版授權訂購碼
- 備份現有資料庫
- 關閉運行伺服器
- 將企業版原始碼匯入原運行環境
- 依常用方式重啟資料庫
- 下載 web_enterprise 模組
- 於模組主畫面中輸入訂購碼
跟上篇比起來的差異是步驟3到5的指令,有看過上篇的夥伴們可以直接跳到第3步開始閱讀哦!
1. 購買 企業版授權訂購碼
請向各自的 Odoo 承辦夥伴諮詢,收到報價確認繳款後就會收到授權訂購碼囉!
萬一不順利,一隅在這裡隨時歡迎你!
購買後會收到:
- 企業版原始碼 (私有 repository):提供 GitHub 帳號後加入
- 訂購碼
2. 備份現有資料庫
順利升級的情況下,我們不需要匯入或重建資料庫,但這個步驟十分重要!確保事情不會發展到無法挽回的結果。
以超級使用者身份登入原本資料庫
進入 http://<your-odoo-server>:8069/web/database/manager
會出現下方畫面
點選 Backup (備份)。這個步驟做完會以
zip 檔儲存於裝置下載路徑。
3. 關閉運行伺服器
一樣Ctrl + C 按下去就對啦~
習慣監控log的夥伴這時候會看到熟悉的shutdown 訊息。
4. 將企業版原始碼匯入原運行環境
還記得步驟 1 收到的企業版原始碼 repository 嗎?上篇我們直接帶大家登入Github 下載ZIP檔,但在 Docker 環境必須依靠 git clone 指令,所以要從 SSH Key 認證開始!
1. 確認container SSH Key 已加入Github帳號
a. 生成SSH Key (如果還沒生成)
不需要設定密碼的話,一路按下Enter直到完成
ssh-keygen -t ed25519 -C "[email protected]"
b. 複製公鑰
cat ~/.ssh/id_ed25519.pub
c. 前往Github > Setting(設定)> SSH and GPG keys > New SSH Key,新增剛剛複製的公鑰
2. 以上步驟完成後,可以回到container 測試是否成功
ssh -T [email protected]
3. 回到container 環境,使用git clone 指令將企業版原始碼放上放上原本運行環境,這步驟就完成囉!
- 安裝在原odoo community原始碼的根目錄
cd /opt
git clone [email protected]:odoo/enterprise.git --branch 18.0 --single-branch enterprise
這裡一樣要注意!!跟上篇提醒重點一樣
雷點1:記得核對目前社群版號,要下載的企業版號要一致哦!!否則後面步驟運行會無法正常運行!這裡使用的是 --branch 標籤來選擇版號
5. 依常用方式重啟資料庫
這次一樣兩種執行服務方式都跟大家分享
一、一般運行指令:
./odoo-bin --addons-path=odoo/addons,enterprise -d <mydb>
二、使用config檔案運行:
1. 查看config檔案內容,在addons_path 參數中加入企業版程式碼路徑
vim /etc/odoo/odoo.conf
2. 運行指令加上 -c 標籤放上config檔案路徑
cd /opt/odoo
./odoo-bin -c /etc/odoo/odoo.conf
一樣提醒大家,這裡的重點是addons_path 要加上企業版原始碼路徑喲!
這裡也帶大家稍微複習一下 odoo 運行標籤,詳細說明請官方手冊: https://www.odoo.com/documentation/19.0/zh_TW/developer/reference/cli.html
-c 是 configuration 設定檔的標籤
-d 是 database 資料庫的標籤
--addons-path 是 odoo 模組及套件列表,多路徑請用逗號區隔,不要加空格!
都是使用 odoo-bin 運行哦!
這裡請注意!!
雷點2:addons_path 路徑請放上整個企業版原始碼,盡量不要更動 enterprise 裡面的原始碼!
這裡關乎 Odoo 底層架構,許多模組是相互依賴疊加形成的,任何更動導致依賴項不完整的話,有影響到的模組會無法正確安裝,請大家注意哦!
一隅工程師有幫大家踩過這個雷了!
6. 下載 web_enterprise 模組
先恭喜大家最難的部分都結束了!
到了這一步我們已經順利開啟含有企業版原始碼的 Odoo 服務了!
剩下的只有將步驟1收到的訂購碼與資料庫連結,讓 Odoo 知道我們是合法使用者~
1. 打開 Odoo 進入設定,滑到下方「開發人員工具」點選「啟動開發者模式」
2. 回到主畫面選擇「應用程式」點選「更新模組列表」並「更新」
注意:要先開啟開發者模式才看得到「更新模組列表」哦!
3. 搜尋「web_enterprise」後「啟動」
這裡會跑一段時間,請耐心等候
7. 於模組主畫面中輸入訂購碼
前面步驟都完成後,模組主畫面會跳出藍色的提醒視窗。
點選「註冊享用免費服務計畫」後輸入「訂購碼」。
大功告成!!!
讓我們再次回顧 2 個易踩雷點
- 步驟四:記得核對目前社群版號,要下載的企業版號要一致哦!!否則後面步驟運行會無法正常運行
- 步驟五:addons_path 路徑請放上整個企業版原始碼,盡量不要更動 enterprise 裡面的原始碼!
這次的Docker介紹也希望大家升級順利,有任何問題別忘記我們有步驟二的備份資料!
一隅工程師再次歡迎各位夥伴好手一起交流~ 有希望我們分享的主題歡迎在社群媒體上留言!
by TTris
留言傳送門:
一隅數位 Odoo ERP 官方合作夥伴