gengai
This commit is contained in:
10
Dockerfile/web/lessie_web_Dockerfile
Normal file
10
Dockerfile/web/lessie_web_Dockerfile
Normal file
@@ -0,0 +1,10 @@
|
||||
# 使用 Nginx 官方轻量镜像
|
||||
FROM nginx:1.25-alpine
|
||||
|
||||
# 拷贝前端构建产物
|
||||
COPY dist/ /usr/share/nginx/html/
|
||||
|
||||
# 暴露端口
|
||||
EXPOSE 80
|
||||
|
||||
CMD ["nginx", "-g", "daemon off;"]
|
||||
@@ -1,8 +1,6 @@
|
||||
pipeline {
|
||||
agent any
|
||||
tools{
|
||||
node 'node20.15.0'
|
||||
}
|
||||
|
||||
parameters {
|
||||
gitParameter(
|
||||
branchFilter: 'origin/(.*)',
|
||||
@@ -19,25 +17,30 @@ pipeline {
|
||||
choice(
|
||||
name: 'NAME_SPACES',
|
||||
choices: ['sit', 'test', 'prod'],
|
||||
description: '选择构建的环境配置:'
|
||||
description: '选择存放镜像的仓库命名空间:'
|
||||
)
|
||||
choice(
|
||||
name: 'BUILD_ENV',
|
||||
choices: ['im', 's2', 'prod'],
|
||||
description: '选择构建的环境配置, 默认为 pnpm build:im 构建'
|
||||
)
|
||||
string(
|
||||
name: 'CUSTOM_TAG',
|
||||
defaultValue: '',
|
||||
description: '可选:自定义镜像 Tag (字母、数字、点、下划线、短横线), 留空则自动生成 “ v+构建次数_分支名_短哈希_构建时间 ”'
|
||||
description: '可选:自定义镜像 Tag (字母、数字、点、下划线、短横线), 如 v0.0.1, 留空则自动生成 “ v+构建次数_分支名_短哈希_构建时间 ”'
|
||||
)
|
||||
}
|
||||
environment {
|
||||
REGISTRY = "uswccr.ccs.tencentyun.com" // 镜像仓库地址
|
||||
NAMESPACE = "lessie${params.NAME_SPACES}" // 命名空间根据choices的选择拼接
|
||||
IMAGE_NAME = "flymoon-admin" // 镜像名(固定前缀)
|
||||
IMAGE_NAME = "lessie-ai-web" // 镜像名(固定前缀)
|
||||
CREDENTIALS_ID = "dxin_img_hub_auth" // 容器仓库凭证ID
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('拉取代码') {
|
||||
steps {
|
||||
git branch: "${params.Code_branch}", credentialsId: 'fly_gitlab_auth', url: 'http://106.53.194.199/root/web/jennie.git'
|
||||
git branch: "${params.Code_branch}", credentialsId: 'fly_gitlab_auth', url: 'http://106.53.194.199/web/jennie.git'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,9 +112,20 @@ pipeline {
|
||||
}
|
||||
}
|
||||
|
||||
stage('Maven 编译') {
|
||||
stage('pnpm i&b') {
|
||||
steps {
|
||||
sh "cd ${WORKSPACE}/ && mvn clean install -Dmaven.test.skip=true"
|
||||
script {
|
||||
def buildEnv = params.BUILD_ENV // 获取参数
|
||||
sh """
|
||||
export PATH="/data/nvm/versions/node/v20.15.0/bin:$PATH"
|
||||
echo "开始安装依赖包"
|
||||
cd ${WORKSPACE}/ && rm -rf node_modules && pnpm install
|
||||
echo "开始构建"
|
||||
pnpm build:${buildEnv}
|
||||
mv dist/main/index.html dist/
|
||||
chmod -R 755 dist/
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
30
k8s_yaml/public/Secret/jennie-im-tls.yaml
Normal file
30
k8s_yaml/public/Secret/jennie-im-tls.yaml
Normal file
@@ -0,0 +1,30 @@
|
||||
apiVersion: v1
|
||||
data:
|
||||
tls.crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVuakNDQTRhZ0F3SUJBZ0lVUGFOcWJtREQrSG9BVjArT0xXTGZyd3lrUWI4d0RRWUpLb1pJaHZjTkFRRUwKQlFBd2dZc3hDekFKQmdOVkJBWVRBbFZUTVJrd0Z3WURWUVFLRXhCRGJHOTFaRVpzWVhKbExDQkpibU11TVRRdwpNZ1lEVlFRTEV5dERiRzkxWkVac1lYSmxJRTl5YVdkcGJpQlRVMHdnUTJWeWRHbG1hV05oZEdVZ1FYVjBhRzl5CmFYUjVNUll3RkFZRFZRUUhFdzFUWVc0Z1JuSmhibU5wYzJOdk1STXdFUVlEVlFRSUV3cERZV3hwWm05eWJtbGgKTUI0WERUSTFNRE14T0RFeE5ERXdNRm9YRFRRd01ETXhOREV4TkRFd01Gb3dZakVaTUJjR0ExVUVDaE1RUTJ4dgpkV1JHYkdGeVpTd2dTVzVqTGpFZE1Cc0dBMVVFQ3hNVVEyeHZkV1JHYkdGeVpTQlBjbWxuYVc0Z1EwRXhKakFrCkJnTlZCQU1USFVOc2IzVmtSbXhoY21VZ1QzSnBaMmx1SUVObGNuUnBabWxqWVhSbE1JSUJJakFOQmdrcWhraUcKOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXRiMmhvVWQ2YU9QS0FaUzVoZnBtbno4VFZzNWV2c3RFT09YYgo3UTdZTzl1S2VIMEdXWEZGaXNuM3NhNzF4YU1waCszbERVZExQYlorSUpRQXVEN01ScWxNYXdXYzNxT1dMaDJHCk84dThsemVMZjdMQW9JU3p1YXR5M1craTJpamNiTUkwZEtxeGRYcHBucW1MQm01dW96MHRTOEVCLzVPWlNnOXkKN2paT0ovS3pFTUlCd1kyN0tJMWdwMHJ5eUEzSGJCUE1XNy9vRHRmUVF3eDBPajlhOUJVcHBYYzNKVWo5UENlUAoyQmZ3bjBwK0o3UUErY0psNm5XQ25SWDRoQzFleXJLcjllWkNpNmJ4UWpuc1l0TlIzR0FkM2lQQWZ2L0NKaWpNCnJuWjVzQ3N0VlpZUk5hc3p4NmczU1p2K3cyblh3ZWZSbkQvenQ1bUp5akd2aC83bm5RSURBUUFCbzRJQklEQ0MKQVJ3d0RnWURWUjBQQVFIL0JBUURBZ1dnTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjRApBVEFNQmdOVkhSTUJBZjhFQWpBQU1CMEdBMVVkRGdRV0JCVFdzREZtRHpYZ3JIWVJaNWxWSGoxcHF4aTBPREFmCkJnTlZIU01FR0RBV2dCUWs2Rk5YWFh3MFFJZXA2NVRidXVFV2VQd3BwREJBQmdnckJnRUZCUWNCQVFRME1ESXcKTUFZSUt3WUJCUVVITUFHR0pHaDBkSEE2THk5dlkzTndMbU5zYjNWa1pteGhjbVV1WTI5dEwyOXlhV2RwYmw5agpZVEFoQmdOVkhSRUVHakFZZ2dzcUxtcGxibTVwWlM1cGJZSUphbVZ1Ym1sbExtbHRNRGdHQTFVZEh3UXhNQzh3CkxhQXJvQ21HSjJoMGRIQTZMeTlqY213dVkyeHZkV1JtYkdGeVpTNWpiMjB2YjNKcFoybHVYMk5oTG1OeWJEQU4KQmdrcWhraUc5dzBCQVFzRkFBT0NBUUVBU1BxbldQVXFMbFJnbXNpMld6RnFTbnVZR1hpTUJ3Z1hGaGZUL0ovZgo0SkVQa1NLeWYrU0s3TUh6U1pvRzhXYW5WVEoybTB3ZGVKbUlDejFCOGhma29NblBMWisvVlFKMXRqZFFaL0ZxCmFqalBUeXZXNVRWU01sNmRDY1VhaXFsbFhNbXFteDBMUFhKeElnQVp0cGJHdnBHNXJqY21wMzJEWnNFbzJVT1AKcFZlYmZETXVKRnl6MmRLWnlSc213K0t2bmlXTWxqelFJaEtSOHJHT0pnblNYYlVwTDdpb0Mwd2Y0ZW9XOHNWcApCUG4vaFNKU1NuVFROK09LdzgxNTN6ODVubS9pWnFuVUZ5aVhWNDZhaUNORm02NmM1N1ZkZkRCeWFUb2xtRWE0Cmx0U3FwZmdTZmVvaEVkTUtLa2tsQ0NmdlNoM3VSSmZGUlNIdUhPMDRhYWJYSWc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t
|
||||
tls.key: LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2QUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktZd2dnU2lBZ0VBQW9JQkFRQzF2YUdoUjNwbzQ4b0IKbExtRittYWZQeE5Xemw2K3kwUTQ1ZHZ0RHRnNzI0cDRmUVpaY1VXS3lmZXhydlhGb3ltSDdlVU5SMHM5dG40ZwpsQUM0UHN4R3FVeHJCWnplbzVZdUhZWTd5N3lYTjR0L3NzQ2doTE81cTNMZGI2TGFLTnhzd2pSMHFyRjFlbW1lCnFZc0dibTZqUFMxTHdRSC9rNWxLRDNMdU5rNG44ck1Rd2dIQmpic29qV0NuU3ZMSURjZHNFOHhiditnTzE5QkQKREhRNlAxcjBGU21sZHpjbFNQMDhKNC9ZRi9DZlNuNG50QUQ1d21YcWRZS2RGZmlFTFY3S3NxdjE1a0tMcHZGQwpPZXhpMDFIY1lCM2VJOEIrLzhJbUtNeXVkbm13S3kxVmxoRTFxelBIcURkSm0vN0RhZGZCNTlHY1AvTzNtWW5LCk1hK0gvdWVkQWdNQkFBRUNnZ0VBSCtUbDROMGZxeGt3dWdyTTdTbUd5WE1qRkhTV2xZS3NHQlVrdmF0QmdPMjAKRlJXUjMrLzhQWkZZcmY3UHBHM1FLOG53ek40Q1l4UHIraEVuT0M1VElLSjA1Z0kvNTZXTFJWQUtudU5RRnpTWQovMkhTSXNsdkZnb3oyQThQcEJ3UUpPa0hGaU5mamNlY0VndGNlZFkzQmVCR1d2bEYvY0Y4SVE1cGc4c1ZkN1o0CnNPQ21tMVBkZ1JqVHRmK2JmdUl2TmxqdDhqVFNjTUhZcjN4dnQ2WC91VmFXV214cSsrVUJILzB1UlpVTVR4eEwKK0t1dDJkMHFVb0pZaGFJa3FzaUsvQnNVQXVTRWxtRHByRUtITlMxNTdSRjFpeUR2QTNvNjhxSnEvcUlNdS9tUAo0VEEvaG9qY3QrMTB1a1JDZFFWRGt2Tjk5NGlNbzJWSXFYVDkxbWhueVFLQmdRRHRHRzZSUDc5WWVERE5NZlFhCjV1eVZmTG4xaFZWL0phWVNHR0w3V1QrVkNSbHltczFNaXRpNFdnYzYwZ3dGMnZqRENSSkJEZ3NCQ294VzZDcGUKZTB0WkFCMk1FMTJBdEJweFRXU0VCcmNERWFEVHFGeUs3YlJteURNRVQyYk5uNGthYm11SHVhM0o3Z1N1RDZlOQpjMTMzUlVhVzFNamQ0dHpFUjdPRHpZcWx0UUtCZ1FERU8wNGRUNTZjaWhwbEVJTXk3WVNmRlltbnF6dmVvOEN3CkdQUGpoMFBSN2hIOFl6ckpvRUQ3Qmp2Y0tsN3IxbG9RblhaemNnRytoeDQ5WC9URlkrWUtOTklaVmdRV0RiYjYKbTVRTlVBYVV5emVhL3NMbmxrazBmdU9PUTdjNXZybithSlJhd2U4YlZwRG9aM1RNV3VBeXVoNEhiRHVsVlJ2eQpoeFNLMTBkclNRS0JnR2lkTUNRc3dZd1N0RTNGN2RSMDhnemZsTm5OZERUKzhyRG5TNzFsMnRVeXg2UzJ3MEV6CnZuNVJVd0ZVTHZQaWM0THpITGZScjI5TkxURW5qWkpVeXFGQm1NZjJ2M29MZmVOaVo2aU5vZkRidFYvTzJNNkEKSmVwNENYS3Nha3J1U3J0NzN6eHE1RkRHRWhDUFhjOE0rWGdpZkF3UFpYWHFKTWtDYmlZSTZsVkZBb0dBZnVLKwpNdlBONHZqbDhsM0lDRUZQVlRLdkRRMExMSDZFVlJuOWNpMS83Qm5kNVc0Z2tFbWdXdkQvK2ZBbjZxVnpIWFZFCko0Z2JtcUJ5TEV1RTBiSTBDSHQ1TTByTVg1cEVyQzIzZ1JneStUbWlYZ1hINzhuYzBpWU9iR3BhNnVycUI1aUYKL1YyVGlBRGt1SEpWTXVLOFAvRGJBLyszWGNQM3kwNFBPV3ZVMFlrQ2dZQW1nSWdaNzV1SFA1TGx6NThOL3hPbgpRTG9kSEtrRGdYQnlIVldUeUZMUjVVNVJRM3B2dVBHRTJMRENSNzRMTmdwQTAxYmU5dldqd3gxWVMwYjBGVGhGCnZJV0dOaHcwTU1ORmFYUCs5MzJNa3Q1NUdmdXEvMm5lUm16QWpjZHdES0NPMTF4YVRiVktNNk56S1JkSytTbloKbnFhelJoVTl1cXJIOFdFa3VOaFkyQT09Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0=
|
||||
kind: Secret
|
||||
metadata:
|
||||
creationTimestamp: "2025-10-30T08:53:17Z"
|
||||
labels:
|
||||
qcloud-app: jennie-im-tls
|
||||
managedFields:
|
||||
- apiVersion: v1
|
||||
fieldsType: FieldsV1
|
||||
fieldsV1:
|
||||
f:data:
|
||||
.: {}
|
||||
f:tls.crt: {}
|
||||
f:tls.key: {}
|
||||
f:metadata:
|
||||
f:labels:
|
||||
.: {}
|
||||
f:qcloud-app: {}
|
||||
f:type: {}
|
||||
manager: tke-platform-api
|
||||
operation: Update
|
||||
time: "2025-10-30T08:53:17Z"
|
||||
name: jennie-im-tls
|
||||
namespace: test-lessie
|
||||
resourceVersion: "1849356229"
|
||||
uid: 74b243f9-d82c-426b-9411-81245885164c
|
||||
type: kubernetes.io/tls
|
||||
@@ -3,7 +3,7 @@
|
||||
- 集群外部:`http://<Node_IP>:38000`
|
||||
|
||||
## Go
|
||||
- 集群内部:`http://test-lessie-sourcing-api-svc.test-lessie.svc.cluster.local:8100`
|
||||
- 集群内部:`http://test-lessie-go-api-svc.test-lessie.svc.cluster.local:8100`
|
||||
- 集群外部:`http://<Node_IP>:30810`
|
||||
|
||||
## Java
|
||||
@@ -18,3 +18,10 @@
|
||||
- 集群外部:`http://<Node_IP>:30809`
|
||||
|
||||
## 主站前端
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ spec:
|
||||
type: DirectoryOrCreate
|
||||
containers:
|
||||
- name: test-flymoon-agent # 容器名称
|
||||
image: uswccr.ccs.tencentyun.com/lessietest/flymoon-agent:v0.0.1 # 容器镜像
|
||||
image: uswccr.ccs.tencentyun.com/lessietest/flymoon-agent:v0.0.2 # 容器镜像
|
||||
imagePullPolicy: IfNotPresent # 镜像拉取策略 ,有则不拉
|
||||
env:
|
||||
- name: POD_NAME
|
||||
|
||||
@@ -38,7 +38,7 @@ spec:
|
||||
type: DirectoryOrCreate
|
||||
containers:
|
||||
- name: test-flymoon-payment # 容器名称
|
||||
image: uswccr.ccs.tencentyun.com/lessietest/flymoon-payment:v0.0.1 # 容器镜像
|
||||
image: uswccr.ccs.tencentyun.com/lessietest/flymoon-payment:v0.0.3 # 容器镜像
|
||||
imagePullPolicy: IfNotPresent # 镜像拉取策略 ,有则不拉
|
||||
env:
|
||||
- name: POD_NAME
|
||||
|
||||
@@ -44,7 +44,7 @@ spec:
|
||||
type: DirectoryOrCreate
|
||||
containers:
|
||||
- name: test-lessie-agents # 容器名称
|
||||
image: uswccr.ccs.tencentyun.com/lessietest/lessie-sourcing-agents:v24_dxin_9042beec_202510271811 # 容器镜像
|
||||
image: uswccr.ccs.tencentyun.com/lessietest/lessie-sourcing-agents:v0.0.2 # 容器镜像
|
||||
imagePullPolicy: IfNotPresent # 镜像拉取策略 ,有则不拉
|
||||
env:
|
||||
- name: POD_NAME
|
||||
|
||||
81
k8s_yaml/test/test-lessie-ai-web.yaml
Normal file
81
k8s_yaml/test/test-lessie-ai-web.yaml
Normal file
@@ -0,0 +1,81 @@
|
||||
# ----------------------------
|
||||
# Deployment
|
||||
# ----------------------------
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: test-lessie-ai-web-deployment
|
||||
namespace: test-lessie
|
||||
labels:
|
||||
app: test-lessie-ai-web
|
||||
environment: test
|
||||
project: lessie
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: test-lessie-ai-web
|
||||
environment: test
|
||||
project: lessie
|
||||
strategy:
|
||||
type: RollingUpdate # 滚动更新策略
|
||||
rollingUpdate:
|
||||
maxSurge: 1 # 最大新增副本数(先加)
|
||||
maxUnavailable: 0 # 最大不可用副本数(不减)
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: test-lessie-ai-web
|
||||
environment: test
|
||||
project: lessie
|
||||
spec:
|
||||
imagePullSecrets:
|
||||
- name: dxin-image-repository
|
||||
volumes:
|
||||
- name: test-default-conf-volume
|
||||
configMap:
|
||||
name: test-default-conf
|
||||
containers:
|
||||
- name: test-lessie-ai-web
|
||||
image: uswccr.ccs.tencentyun.com/lessiesit/lessie-ai-web:latest
|
||||
imagePullPolicy: IfNotPresent
|
||||
ports:
|
||||
- containerPort: 80
|
||||
resources:
|
||||
requests:
|
||||
cpu: "200m" # 容器请求分配0.2个CPU核心(这不是实际占用,但调度会以这里进行参考)
|
||||
memory: "256Mi" # 容器请求分配1Gi内存(这会实际预留)
|
||||
limits:
|
||||
cpu: "500m" # 最多可以使用0.5个CPU核心
|
||||
memory: "512Mi" # 容器最多可以使用8Gi内存
|
||||
volumeMounts:
|
||||
- name: test-default-conf-volume
|
||||
mountPath: /etc/nginx/conf.d/default.conf
|
||||
subPath: default.conf
|
||||
|
||||
---
|
||||
# ----------------------------
|
||||
# Service
|
||||
# 集群内部:http://test-lessie-ai-web-svc.test-lessie.svc.cluster.local:8000
|
||||
# 集群外部:http://<Node_IP>:30080
|
||||
# ----------------------------
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: test-lessie-ai-web-svc
|
||||
namespace: test-lessie
|
||||
labels:
|
||||
app: test-lessie-ai-web
|
||||
environment: test
|
||||
project: lessie
|
||||
spec:
|
||||
type: NodePort
|
||||
selector:
|
||||
app: test-lessie-ai-web
|
||||
environment: test
|
||||
project: lessie
|
||||
ports:
|
||||
- name: http
|
||||
port: 80
|
||||
targetPort: 80
|
||||
nodePort: 30080
|
||||
@@ -38,7 +38,7 @@ spec:
|
||||
type: DirectoryOrCreate
|
||||
containers:
|
||||
- name: test-lessie-go-api # 容器名称
|
||||
image: uswccr.ccs.tencentyun.com/lessietest/go_lessie-sourcing-api:latest # 容器镜像
|
||||
image: uswccr.ccs.tencentyun.com/lessietest/go_lessie-sourcing-api:v0.0.2 # 容器镜像
|
||||
imagePullPolicy: IfNotPresent # 镜像拉取策略 ,有则不拉
|
||||
env:
|
||||
- name: POD_NAME
|
||||
|
||||
Reference in New Issue
Block a user