YAPI K8S部署

 

 

YAPi打包Dockerfilenode

[root@k8s-node-10-82-4-105 yapi2]# cat Dockerfile
FROM node:11 as builder
# 基礎環境構建
RUN apt-get install -y git python make openssl tar gcc
#增長代碼包
ADD yapi.tar.gz /home/
#準備運行目錄,並複製代碼到運行目錄
RUN mkdir /yapi && mv /home/yapi-1.7.0 /yapi/vendors
#指定配置文件
COPY config.json /yapi
# 工做目錄
WORKDIR /yapi/vendors
#安裝相關模塊
RUN npm install --production --registry https://registry.npm.taobao.org && npm run install-server
#複製啓動腳本
COPY entrypoint.sh /usr/bin
#更換代碼路徑準備NFS掛載目錄。
#RUN mv /yapi /yapi2
#啓動命令
ENTRYPOINT ["/usr/bin/entrypoint.sh"]python

config.json文件git

[root@k8s-node-10-82-4-105 yapi2]# cat config.json
{
"port": "3000",
"adminAccount": "net2817@126.com",
"db": {
"servername": "192.168.115.36",
"DATABASE": "yapi2",
"port": 32308
}
}mongodb

執行腳本npm

[root@k8s-node-10-82-4-105 yapi2]# cat entrypoint.sh
#!/bin/sh
#代碼運行目錄遷回
# yapi初始化後會有一個init.lock文件
sed -i 's/192.168.115.36/yapi-mongodb/g' /yapi/config.json
sed -i 's/32308/27017/g' /yapi/config.json
lockPath="/yapi/init.lock"
# 若是初始化文件文件存在,則直接運行,不然初始化
cd /yapi/vendors
if [ ! -f "$lockPath" ]; then
# 啓動Yapi初始化
npm run install-server
node server/app.js
else
# 運行yapi管理系統
node server/app.js
fijson

mongodb配置api

數據卷做持久化:app

YAPI配置ui

不做持久化:server

相關文章
相關標籤/搜索