教你如何將應用從docker-compose遷移到k8s中
公司之前有一些應用是通過docker-compose部署,最近領導讓我將其遷移到k8s中。我已經初步完成任務,現記錄其操作過程,分享給各位朋友。
工具推薦
當我接到這個任務,我的第一感覺是要參考docker-compose.yaml中的信息,手寫一套k8s的yaml部署文件。這樣當然是可行的,但是效率比較低,且需要同時熟悉docker-compose和k8s的yaml文件的結構。
後來我發現瞭一個專門的遷移工具,可方便地通過docker-compose.yaml自動生成k8s的yaml部署文件。這個工具就是kompose,現已經被k8s官方文檔收錄:https://kubernetes.io/zh-cn/docs/tasks/configure-pod-container/translate-compose-kubernetes/ 。
操作步驟
安裝kompose
註意:僅需要下載安裝kompose。運行環境中可以沒有docker,也無需kubectl。
curl -L https://github.com/kubernetes/kompose/releases/download/v1.24.0/kompose-linux-amd64 -o kompose chmod +x kompose sudo mv ./kompose /usr/local/bin/kompose
轉換yaml
在docker-compose.yaml所在的路徑下運行kompose convert
命令進行轉換。如下圖所示:
調整
將新生成的系列文件復制到到本地計算機進行調整。生成的yaml文件中自動填入瞭不少帶kompose字樣的標簽和註解,可以將其替換。您可能還需要根據實際需求調整與網絡相關的yaml文件。
部署到k8s
調整好yaml文件後,就可以在k8s部署。在本示例中,我為瞭操作方便,將所有的內容寫到瞭一個yaml文件中。如下圖所示。
到此這篇關於如何將應用從docker-compose遷移到k8s中的文章就介紹到這瞭,更多相關docker compose遷移到k8s內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- docker-compose安裝yml文件配置方式
- Docker Compose的安裝和使用步驟
- Linux安裝Docker詳細教程
- 解決使用Docker Compose管理容器的問題
- java學習DongTai被動型IAST工具部署過程