如何用k8s运行部署Java项目

Posted 哦克Oak

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用k8s运行部署Java项目相关的知识,希望对你有一定的参考价值。

k8s的常用命令 

 

kubectl get ingress -n prod

kubectl get deployment -n prod

kubectl get pod -n prod

kubectl get service -n prod

kubectl logs -f -n prod prodName-6cc4c54645-765g9 看日志

kubectl apply -f ~/Downloads/paas/007.yaml 更新配置文件

 

007.yaml   示例

apiVersion: apps/v1
kind: Deployment
metadata:
  namespace: prod
  name: tomcat-deployment
  labels:
    app: tomcat
spec:
  replicas: 2
  selector:
    matchLabels:
      app: tomcat
  template:
    metadata:
      labels:
        app: tomcat
    spec:
      containers:
        - name: tomcat
          image: tomcat:9.0.71-jre8-temurin-focal
          ports:
            - containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
  namespace: prod
  name: tomcat
spec:
  selector:
    app: tomcat
  ports:
    - name: tomcat
      protocol: TCP
      port: 8080
      targetPort: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  namespace: prod
  name: ingress-tomcat
spec:
  rules:
    - host: "k8s.agatha.pro"
      http:
        paths:
          - pathType: Prefix
            path: "/"
            backend:
              service:
                name: tomcat
                port:
                  number: 8080

  

使用dockerFile部署jar包

 

 (1)打jar包

(2)创建DockerFile文件

(3)构建镜像 docker build -t my/spring-boot .

(4)运行 docker run -d --restart=always --name demo -p 8080:8080 my/spring-boot

--restart=always 这个表示docker容器在停止或服务器开机后会自动重新启动

  

 dockerFile文件 示例
 
 ## 基础镜像java
 FROM java:8
 ## 作者 Oak
 MAINTAINER Oak
 ## 就是你上传的jar包的名称。给jar包起个别名
 ADD project-spring_boot-1.0-SNAPSHOT.jar spring_boot.jar
 ## 就是在容器中以多少端口号运行
 EXPOSE 8066
 ## 容器启动之后执行的命令,java -jar spring_boot.jar 即启动jar
 ENTRYPOINT ["java","-jar","spring_boot.jar"]

  

 

 

 

  

以上是关于如何用k8s运行部署Java项目的主要内容,如果未能解决你的问题,请参考以下文章

如何用Jenkins实现自动化部署svn更新代码

如何用Jenkins实现自动化部署svn更新代码

如何用Jenkins实现自动化部署svn更新代码

如何用docker 搭建eclipse+java开发环境

如何用Tomcat部署前端静态文件

如何用docker进行部署