k8s部署yapi环境,用于管理api接口
k8s部署yapi环境yapi作用api接口管理平台k8s环境搭建:https://blog.csdn.net/weixin_43606975/article/details/119947061?spm=1001.2014.3001.55021.mongodb文件#cat mongodb.yaml---kind: DeploymentapiVersion: apps/v1metadata:labe
·
k8s部署yapi环境
yapi作用api接口管理平台
k8s环境搭建:
https://blog.csdn.net/weixin_43606975/article/details/119947061?spm=1001.2014.3001.5502
1.mongodb文件
#cat mongodb.yaml
---
kind: Deployment
apiVersion: apps/v1
metadata:
labels:
app: mongo
name: mongo
spec:
selector:
matchLabels:
app: mongo
template:
metadata:
labels:
app: mongo
spec:
nodeName: k8s-node1
restartPolicy: Always
containers:
- image: mongo:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 27017
name: mongo
env:
- name: MONGO_INITDB_ROOT_USERNAME
value: "root"
- name: MONGO_INITDB_ROOT_PASSWORD
value: "admin@123456"
- name: MONGO_INITDB_DATABASE
value: "yapi"
livenessProbe:
tcpSocket:
port: 27017
initialDelaySeconds: 10
periodSeconds: 10
timeoutSeconds: 5
readinessProbe:
tcpSocket:
port: 27017
initialDelaySeconds: 5
periodSeconds: 10
timeoutSeconds: 1
# 优雅退出
lifecycle:
preStop:
exec:
command: ["/bin/bash", "-c", "sleep 20"]
volumeMounts:
- name: mongo-db
mountPath: /data/db
volumes:
- name: mongo-db
hostPath:
path: /data/yapi/mongo
type: DirectoryOrCreate
---
apiVersion: v1
kind: Service
metadata:
name: mongo
spec:
type: ClusterIP
selector:
app: mongo
ports:
- protocol: TCP
port: 27017
targetPort: 27017
---
apiVersion: v1
kind: Service
metadata:
name: mongoba
spec:
type: NodePort
ports:
- name: mongo
protocol: TCP
port: 27017
targetPort: 27017
nodePort: 30075
selector:
app: mongo
2.yapi文件
#cat yapi.yaml
---
kind: Deployment
apiVersion: apps/v1
metadata:
labels:
app: yapi
name: yapi
spec:
replicas: 2 #2个副本
selector:
matchLabels:
app: yapi
template:
metadata:
labels:
app: yapi
spec:
restartPolicy: Always
containers:
- image: jayfong/yapi:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 3000
name: yapi
env:
#管理员账号,禁止注册,默认密码: ymfe.org 登录请修改
- name: YAPI_ADMIN_ACCOUNT
value: "admin@qq.com"
- name: YAPI_ADMIN_PASSWORD
value: "admin123"
- name: YAPI_CLOSE_REGISTER
value: "true"
#mongodb 配置
- name: YAPI_DB_SERVERNAME
value: "mongo.default.svc.cluster.local"
- name: YAPI_DB_PORT
value: "27017"
- name: YAPI_DB_DATABASE
value: "yapi"
- name: YAPI_DB_USER
value: "root"
- name: YAPI_DB_PASS
value: "admin@123456"
- name: YAPI_DB_AUTH_SOURCE
value: "admin"
#mail 邮件功能
- name: YAPI_MAIL_ENABLE
value: "true"
- name: YAPI_MAIL_HOST
value: "smtp.exmail.qq.com"
- name: YAPI_MAIL_PORT
value: "465"
- name: YAPI_MAIL_FROM
value: "admin@qq.com"
- name: YAPI_MAIL_AUTH_USER
value: "xxx"
- name: YAPI_MAIL_AUTH_PASS
value: "xxx"
#ldap 功能
- name: YAPI_LDAP_LOGIN_ENABLE
value: "false"
initContainers:
- name: init-mongo
image: busybox
command: ['sh', '-c', 'until nslookup mongo; do echo waiting for mongo; sleep 2; done;']
---
apiVersion: v1
kind: Service
metadata:
name: yapi
spec:
type: NodePort
selector:
app: yapi
ports:
- protocol: TCP
port: 3000
nodePort: 30000
3.启动yapi,mongodb服务
cd /home/yapi
kubectl apply -f .
kubectl get pod,svc
4.访问用户密码:admin@qq.com /admin123
http://k8s-master-ip:30000/
5.数据迁移:
mongo数据备份:
# mongodump -h 192.168.1.151 --port 30075 -u root -p admin@123456 -d yapi -o /home/yapi
mongo 数据恢复:
# mongorestore -h localhost -u root -p admin@123456 -d yapi /home/yapi/yapi
更多推荐
已为社区贡献14条内容
所有评论(0)