zoukankan      html  css  js  c++  java
  • api管理平台yapi容器化

    docker yapi

    yapi容器化,yapi的dockerfile

    yapi github 地址 是 https://github.com/YMFE/yapi

    官方地址是 https://hellosean1025.github.io/yapi/

    体验地址是 https://yapi.baidu.com/

    1. 首先我们下载yapi的源代码,解压在本地,最新版本是1.9.2

    目录层次如下

    --my-yapi

    ----yapi

    ------vendors

    源代码方在vendors下面,yapi下面会有config.json,映射进来的,打包的时候不放,my-yapi下面放Dockerfile,用来docker build

    2.Dockerfile

    FROM node:12.20.1 as builder
    RUN npm config set registry https://registry.npm.taobao.org
    RUN mkdir -p /home/node/yapi
    COPY yapi /home/node/yapi/
    WORKDIR /home/node/yapi/vendors
    RUN npm install --production
    
    FROM node:12.20.1-alpine3.10
    LABEL maintainer=xiesj@live.com
    ENV TZ="Asia/Shanghai"
    USER node
    RUN mkdir -p /home/node/yapi
    COPY --from=builder /home/node/yapi/vendors /home/node/yapi/vendors
    WORKDIR /home/node/yapi/vendors
    EXPOSE 3000
    CMD node server/app.js
    

    docker镜像可以使用docker.mirrors.ustc.edu.cn,nodejs镜像使用https://registry.npm.taobao.org

    我们使用了2个原始image,一个是node:12.20.1另外一个是node:12.20.1-alpine3.10

    第一个作为build用,第二个作为运行用

    首先我们拉去原始镜像

    docker pull docker.mirrors.ustc.edu.cn/library/node:12.20.1

    docker pull docker.mirrors.ustc.edu.cn/library/node:12.20.1-alpine3.10

    docker tag docker.mirrors.ustc.edu.cn/library/node:12.20.1 node:12.20.1

    docker tag docker.mirrors.ustc.edu.cn/library/node:12.20.1-alpine3.10 node:12.20.1-alpine3.10

    然后我们制作容器镜像,这里使用多个from,如果只使用第一个,那么我们镜像大小是1G,如果是用node alpine原始镜像大概178m。但是alpine镜像没有nodejs的编译环境,比较不方便,所以我们使用2个镜像

    编译的时候默认使用root账号,运行环境我们使用原始镜像的user node

    在my-yapi下面执行

    docker build -t yapi:1.9.2 .

    完成之后我们需要安装,安装之前启动mongo,mongo可以使用默认admin账号,也可以新建一个账号,新建账号需要有yapi数据库的权限

    初始化数据库

    docker run -it --rm -v /home/xxxxxx/my-yapi/yapi/config.json:/home/node/yapi/config.json yapi:1.9.2 npm run install-server

    启动容器

    docker run -itd --name yapi -p 3000:3000 -v /home/xxxxxx/my-yapi/yapi/config.json:/home/node/yapi/config.json yapi:1.9.2

    打包好的镜像,我已经push到docker hub了,想用各位朋友可以直接pull下来

    docker pull xieshujian/yapi:1.9.2

  • 相关阅读:
    QDUOJ LC的课后辅导 单调递增栈
    蓝桥杯 时间问题
    区间sum 和为k的连续区间-前缀和
    康托展开-全排列的编码与解码
    康托展开-全排列应用
    背包之01背包、完全背包、多重背包详解
    HDU
    辗转相除求最大公约数与最小公倍数
    快速幂(反复平方法)
    HDU
  • 原文地址:https://www.cnblogs.com/caihemm/p/14392529.html
Copyright © 2011-2022 走看看