k8s离线部署芋道源码后端

目录

概述

本篇将对 k8s离线部署芋道源码后端 进行详细的说明,对如何构建 Dockerfile,如何整合 Nginx,如何整合 ingress 进行实践。

相关文章:[nacos在k8s上的集群安装实践] k8s离线部署芋道源码前端(https://blog.csdn.net/2301_79691134/article/details/139937105)

效果如下(电脑只8G内存,所以演示较卡):

k8s离线部署芋道源码前端

k8s整合gitlab使用芋道做微服务的cicd

CICD参考文章

实践

Dockerfile

首先构建 docker 镜像,jdk 镜像可以根据自己的需要选择,或者自己构建一个小体积的 jdk 镜像包。

bash 复制代码
FROM harbor.easzlab.io.local:8443/library/java:8u111-jre

# 切 root 用户
USER root

ARG jarFile
## 创建目录,并使用它作为工作目录
RUN mkdir -p /app
WORKDIR /app
# RUN echo "jarFile  is: $jarFile : ${jarFile}"
COPY ./target/$jarFile app.jar

# RUN pwd && ls -l

## 设置 TZ 时区
## 设置 JAVA_OPTS 环境变量,可通过 docker run -e "JAVA_OPTS=" 进行覆盖
ENV TZ=Asia/Shanghai

## 设置 JAVA_OPTS 环境变量,可通过 docker run -e "JAVA_OPTS=" 进行覆盖
ENV JAVA_OPTS="-Xms512m -Xmx512m -Djava.security.egd=file:/dev/./urandom"

EXPOSE 48081

CMD java ${JAVA_OPTS} -jar app.jar

k8s部署脚本

以其中一个服务为例,不再记录其它的服务案例。

yaml 复制代码
# 以Deployment部署Pod
apiVersion: apps/v1
kind: Deployment
metadata:
  name: system-biz
  namespace: default
spec:
  selector:
    matchLabels:
      app: system-biz
  replicas: 1
  template:
    metadata:
      labels:
        app: system-biz
    spec:
      initContainers:
      - name: agent-container
        image: harbor.easzlab.io.local:8443/library/skywalking-java-agent:8.12.0-java8
        command: [ "/bin/sh" ]
        args: [ "-c", "cp -R /skywalking/agent /agent/" ]
        volumeMounts:
          - name: skywalking-agent
            mountPath: /agent
      containers:
      - name: system-biz
        image: harbor.easzlab.io.local:8443/library/funcloud-module-system-biz:2.1.0-jdk8-snapshot
        imagePullPolicy: Always
        ports:
        - containerPort: 48081
        volumeMounts:
        - name: skywalking-agent
          mountPath: /skywalking
        env:
        - name: JAVA_TOOL_OPTIONS
          value: "-javaagent:/skywalking/agent/skywalking-agent.jar"
        - name: SW_AGENT_NAME
          value: "system-biz"
        - name: SW_AGENT_COLLECTOR_BACKEND_SERVICES
          value: "oap-svc.default.svc.cluster.local:11800"
      volumes:
      - name: skywalking-agent
        emptyDir: {}
---
# 创建Pod的Service
apiVersion: v1
kind: Service
metadata:
  name: system-biz
  namespace: default
spec:
  ports:
  - port: 48081
    protocol: TCP
    targetPort: 48081
  selector:
    app: system-biz
相关推荐
格桑阿sir3 天前
Kubernetes控制平面组件:Kubelet 之 Static 静态 Pod
kubernetes·k8s·kubelet·static pod·静态pod·mirror pod·镜像pod
牛奔4 天前
Ubuntu20.04 搭建Kubernetes 1.28版本集群
k8s
matrixlzp8 天前
K8S 基于本地存储的持久卷
云原生·容器·kubernetes·k8s
matrixlzp9 天前
K8S PV 与 PVC 快速开始、入门实战
云原生·容器·kubernetes·k8s
A尘埃10 天前
K8S的使用(部署pod\service)+安装kubesphere图形化界面使用和操作
k8s·kubesphere
matrixlzp12 天前
K8S ConfigMap 快速开始
k8s
yuanlaile18 天前
Go全栈_Golang、Gin实战、Gorm实战、Go_Socket、Redis、Elasticsearch、微服务、K8s、RabbitMQ全家桶
linux·redis·golang·k8s·rabbitmq·gin
人生偌只如初见18 天前
Kubernetes学习笔记-配置Service对接第三方访问
kubernetes·k8s
梁萌19 天前
14-DevOps-快速部署Kubernetes
运维·kubernetes·k8s·devops·kubeode
时迁24720 天前
【k8s】k8s是怎么实现自动扩缩的
云原生·容器·kubernetes·k8s