19.Kubernetes容器交付介绍

如何在k8s集群中部署Java项目

容器交付流程

  • 开发代码阶段

    • 编写代码

    • 编写Dockerfile【打镜像做准备】

  • 持续交付/集成

    • 代码编译打包

    • 制作镜像

    • 上传镜像仓库

  • 应用部署

    • 环境准备

    • Pod

    • Service

    • Ingress

  • 运维

    • 监控

    • 故障排查

    • 应用升级

k8s部署Java项目流程

  • 制作镜像【Dockerfile】

  • 上传到镜像仓库【Dockerhub、阿里云、网易】

  • 控制器部署镜像【Deployment】

  • 对外暴露应用【Service、Ingress】

  • 运维【监控、升级】

k8s部署Java项目

准备Java项目

第一步,准备java项目,把java进行打包【jar包或者war包】

依赖环境

在打包java项目的时候,我们首先需要两个环境

  • java环境【JDK】

  • maven环境

然后把java项目打包成jar包

编写Dockerfile文件

Dockerfile 内容如下所示

制作镜像

在我们创建好Dockerfile文件后,我们就可以制作镜像了

我们首先将我们的项目,放到我们的服务器上

然后执行下面命令打包镜像

等待一段后,即可制作完成我们的镜像

最后通过下面命令,即可查看我们的镜像了

启动镜像

在我们制作完成镜像后,我们就可以启动我们的镜像了

启动完成后,我们通过浏览器进行访问,即可看到我们的java程序

推送镜像

下面我们需要将我们制作好的镜像,上传到镜像服务器中【阿里云、DockerHub】

首先我们需要到 阿里云 容器镜像服务arrow-up-right,然后开始创建镜像仓库

然后选择本地仓库

我们点击我们刚刚创建的镜像仓库,就能看到以下的信息

登录镜像服务器

使用命令登录

然后输入刚刚我们开放时候的注册的密码

镜像添加版本号

下面为我们的镜像添加版本号

操作完成后

推送镜像

在我们添加版本号信息后,我们就可以推送我们的镜像到阿里云了

操作完成后,我们在我们的阿里云镜像服务,就能看到推送上来的镜像了

控制器部署镜像

在我们推送镜像到服务器后,就可以通过控制器部署镜像了

首先我们需要根据刚刚的镜像,导出yaml

导出后的 javademo1.yaml 如下所示

然后通过下面命令,通过yaml创建我们的deployment

或者我们可以进行扩容,多创建几个副本

然后我们还需要对外暴露端口【通过service 或者 Ingress】

然后通过下面的地址访问

运维

....

最后更新于