• YAPI K8S部署


    YAPi打包Dockerfile

    [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"]

    config.json文件

    [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
    }
    }

    执行脚本

    [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
    fi

    mongodb配置

    数据卷作持久化:

    YAPI配置

    不作持久化:

  • 相关阅读:
    servlet
    grep命令
    sort排序命令
    shell脚本面试
    查看远端的端口是否通畅3个简单实用案例!
    mail命令
    linux系统优化的方法
    shell数组
    shell函数介绍语法说明及基本例子
    循环结构的多个控制命令对比与实际案例
  • 原文地址:https://www.cnblogs.com/net2817/p/10859116.html
Copyright © 2020-2023  润新知