如何将应用从docker-compose迁移到k8s中

博客主页:https://tomcat.blog.csdn.net
博主昵称:农民工老王
主要领域:Java、Linux、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文件中。如下图所示。
请添加图片描述
请添加图片描述


如需转载,请注明本文的出处:农民工老王的CSDN博客https://blog.csdn.net/monarch91 。

Docker是一种容器化技术,它可以将应用程序及其依赖项打包到一个可移植的容器中,以便在不同的环境中运行。Docker Compose是一个工具,它使用YAML文件定义并管理多个Docker容器的运行配置。而Kubernetes(简称K8s)是一个开源的容器编排系统,用于自动化部署、扩展和管理容器化应用程序。 Docker主要解决的是应用程序打包和隔离的问题,它将应用程序及其依赖项打包到一个独立的容器中,并提供了一种轻量级的虚拟化技术。Docker Compose则是用于管理多个Docker容器的工具,可以通过一个YAML文件定义多个容器的配置和依赖关系,方便一次性启动和管理多个容器。 Kubernetes是一个用于自动化部署、扩展和管理容器化应用程序的开源系统。它可以管理大规模的容器集群,提供高可用性、自动伸缩和负载均衡等功能。Kubernetes使用Pod作为最小的调度单元,一个Pod可以包含一个或多个容器,并共享网络和存储资源。 总结一下,Docker提供了容器化技术,Docker Compose是用于管理多个Docker容器的工具,而Kubernetes是一个容器编排系统,用于自动化部署和管理容器化应用程序。它们之间的区别在于功能和应用场景的不同。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [如何将应用docker-compose迁移k8s中](https://blog.csdn.net/monarch91/article/details/125917743)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [docker-compose转为k8s配置文件](https://blog.csdn.net/jimo_lonely/article/details/126003100)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

农民工老王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值