项目迁移到k8s平台是怎么样的流程?
可参考此文章
制作java镜像[root@master ~]# git clone https://gitee.com/hadeian/tomcat-java-demo-master.git 正克隆到 'tomcat-java-demo-master'... remote: Enumerating objects: 182, done. remote: Counting objects: 100% (182/182), done. remote: Compressing objects: 100% (165/165), done. remote: Total 182 (delta 6), reused 178 (delta 4), pack-reused 0 接收对象中: 100% (182/182), 1.12 MiB | 338.00 KiB/s, 完成. 处理 delta 中: 100% (6/6), 完成. [root@master ~]# ls anaconda-ks.cfg tomcat-java-demo-master [root@master ~]# mv tomcat-java-demo-master tomcat-java-deamon [root@master ~]# yum -y install java-1.8.0-openjdk maven [root@master ~]# vim /etc/maven/settings.xml #默认是官方源,换阿里云的源vim /etc/maven/settings.xml(159-164行)将镜像推入docker hub仓库中[root@master tomcat-java-deamon]# mvn clean install package '-Dmaven.test.skip=true' ...... [INFO] Processing war project [INFO] Webapp assembled in [73 msecs] [INFO] Building war: /root/test/tomcat-java-deamon/target/ly-simple-tomcat-0.0.1-SNAPSHOT.war [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS #出现这个表示成功 [INFO] ------------------------------------------------------------------------ [INFO] Total time: 05:43 min [INFO] Finished at: 2021-12-28T11:59:08+08:00 [INFO] ------------------------------------------------------------------------ ....... [root@master tomcat-java-deamon]# ls db Dockerfile LICENSE pom.xml README.md src target [root@master tomcat-java-deamon]# mv target/*.war target/ROOT.war [root@node2 test]# cat Dockerfile FROM centos LABEL maintainer haoran ADD tomcat-java-deamon/target/ROOT.war /usr/local/apache-tomcat-9.0.54/webapps/ROOT.war RUN yum -y install java-11-openjdk* EXPOSE 8080 WORKDIR /usr/local/apache-tomcat-9.0.54 ENTRYPOINT /usr/local/apache-tomcat-9.0.54/bin/startup.sh && tail -f /usr/local/apache-tomcat-9.0.54/logs/catalina.out CMD ["/usr/local/apache-tomcat-9.0.54/bin/catalina.sh","start"] //构建镜像 [root@node2 test]# docker build -t 1314444/java-deamon:v1 . central central aliyun maven https://maven.aliyun.com/repository/public
[root@master ~]# docker login Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one. Username: 1314444 Password: WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [root@master ~]# docker push 1314444/java-deamon:v1 The push refers to repository [docker.io/1314444/java-deamon] cd69f6f5c474: Preparing e0d546489ea5: Preparing 74ddd0ec08fa: Preparing denied: requested access to the resource is denied创建Deployment,Service的yaml文件
[root@master test]# cat java.yaml --- apiVersion: apps/v1 kind: Deployment metadata: labels: app: java-deamon name: java namespace: default spec: replicas: 2 selector: matchLabels: app: java-deamon template: metadata: labels: app: java-deamon spec: containers: - image: 1314444/java-deamon:v1 name: java imagePullPolicy: IfNotPresent --- apiVersion: v1 kind: Service metadata: labels: app: java-deamon name: java namespace: default spec: ports: - port: 80 protocol: TCP nodePort: 30000 targetPort: 8080 selector: app: java-deamon type: NodePort [root@master test]# kubectl apply -f java.yaml deployment.apps/java created service/java created [root@master test]# kubectl get pod,svc NAME READY STATUS RESTARTS AGE pod/java-595bf5b979-hw2mw 1/1 Running 0 19s pod/java-595bf5b979-mcdpq 1/1 Running 0 19s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/java NodePort 10.108.60.22380:30000/TCP 19s service/kubernetes ClusterIP 10.96.0.1 443/TCP 9d [root@master test]# curl 10.108.60.223 把美女带回家应用案例 欢迎分享,转载请注明来源:内存溢出
评论列表(0条)