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
相关推荐
菜地里的小菜鸟3 天前
failed to get imageFs info: non-existent label “docker-images
k8s·failedtogetimagefsin·k8s报错
菜地里的小菜鸟5 天前
kubectl debug
k8s·kubectldebug
腾飞开源7 天前
01_K8s干货笔记之认识K8s
运维·笔记·云原生·容器·kubernetes·k8s·容器化部署
小匠石钧知9 天前
02_在多个RockyLinux10虚拟机上安装k8s集群
云原生·容器·kubernetes·k8s
ShirleyWang01215 天前
让headlamp控制台能访问
linux·服务器·python·k8s·k3s
spider_xcxc15 天前
K8s 部署学习笔记
docker·容器·kubernetes·云计算·k8s
ShirleyWang01215 天前
Day02 K3s NGF(Nginx Gateway Fabric)单 Worker 环境网关更新与故障处置 SOP
linux·服务器·python·k8s·k3s
ShirleyWang01215 天前
DAY01 K3s 私有化部署排障复盘与 SOP
linux·服务器·k8s·k3s·企业部署
XUHUOJUN19 天前
AKS 不是安装在 Windows Server 上,而是运行在 Windows Server 之上的 Azure 平台能力
windows·架构·k8s·azure local·azure stack
Geek-Chow19 天前
Connecting kubectl to a Private EKS Cluster Over an Internal Domain
kubernetes·k8s·aws