Kubernetes部署Java项目

Kubernetes部署Java项目,第1张

Kubernetes部署Java项目

文章目录
      • 一、Kubernetes 部署java项目
      • 二、jar包和war包区别
      • 三、登录仓库获取最新版本halo镜像
      • 四、使用K8s资源清单文件
      • 五、网页安装

官网部署指南

halo包下载地址

一、Kubernetes 部署java项目

项目迁移到k8s平台是怎么样的流程?

二、jar包和war包区别

jar:
jar包就是java的类进行编译生成的class文件就行打包的压缩包。里面是一些class文件。当我们自己使用maven写一些java程序,进行打包生成jar包。同时在可以在其他的工程下使用,但是我们在这个工程依赖的jar包,在其他工程使用该jar包也要导入。

war:
war包其实就是一个web程序进行打包便于部署的压缩包,里面包含我们web程序需要的一些东西,其中包括web.xml的配置文件,前端的页面文件,以及依赖的jar。文件数量对于jar包,这样便于我们部署工程,直接放到tomcat的webapps目录下,直接启动tomcat即可。同时可以使用WinRAR查看war包,直接将后缀.war改成.rar

三、登录仓库获取最新版本halo镜像

上面有两个链接,第一个可以照着官方的来;第二个你可以自己获取包,自己做镜像自己运行

// 登场仓库
[root@master ~]# docker login
Authenticating with existing credentials...
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 pull halohub/halo:1.4.16
1.4.16: Pulling from halohub/halo
f3ef4ff62e0d: Pull complete 
706b9b9c1c44: Pull complete 
76205aac4d5a: Pull complete 
5339a2f9d7c6: Pull complete 
5046244cf427: Pull complete 
6f2d87dec2d6: Pull complete 
adddcc4af348: Pull complete 
d5671a6c1733: Pull complete 
Digest: sha256:994537a47aff491b29251665dc86ef2a87bd7000516c330b5e636ca4b029d35c
Status: Downloaded newer image for halohub/halo:1.4.16
docker.io/halohub/halo:1.4.16

// 镜像获取成功
[root@master ~]# docker images | grep halo
halohub/halo                                                      1.4.16          b7b9923025c2   2 weeks ago    325MB
四、使用K8s资源清单文件
[root@master ~]# cat /opt/manifest/halo.yaml 
---
apiVersion: apps/v1
kind: Deployment
metadata: 
  name: halo
  labels: 
    app: halo
spec:
  replicas: 1
  selector: 
    matchLabels: 
      app: halo
  template: 
    metadata: 
      name: halo
      labels: 
        app: halo
    spec:
      containers: 
      - image: halohub/halo:1.4.16
        imagePullPolicy: IfNotPresent
        name: halo

---
apiVersion: v1
kind: Service
metadata: 
  name: halo
spec: 
  ports: 
  - port: 8090			// 默认端口
    targetPort: 8090
    nodePort: 30100		// 自定义nodeport端口
  selector:
    app: halo
  type: NodePort     


// 应用清单文件
[root@master manifest]# kubectl apply -f halo.yaml 
deployment.apps/halo1 created
service/halo created

// 查看容器创建、运行情况
[root@master manifest]# kubectl get pods,svc
NAME                        READY   STATUS    RESTARTS   AGE
pod/halo-7b78758486-572zk   1/1     Running   0          35s

NAME                 TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
service/halo         NodePort    10.98.167.139           8090:30100/TCP   35s
service/kubernetes   ClusterIP   10.96.0.1               443/TCP          31h
五、网页安装

使用 本机IP:30100 访问 halo安装页面


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5681582.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-17
下一篇2022-12-17

发表评论

登录后才能评论

评论列表(0条)

    保存