利用docker-compose搭建yapi

yapi介绍

随着时间的推移,一个公司的项目或系统会比较多,对内对外提供的 api 接口也比较多,为了能够对 api 接口文档进行统一维护,方便不同的人员(项目经理、产品经理,开发人员)进行查阅,很有必要搭建一个 api 接口文档管理系统。

Yapi 就是一款高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 api,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。

本篇博客将介绍如何利用docker-compose快速进行搭建 Yapi 

Yapi 的源代码地址:https://github.com/YMFE/yapi
Yapi 的帮助文档地址:https://hellosean1025.github.io/yapi
EasyYapi 插件的官网地址:https://easyyapi.com/index.html

搭建Yapi系统

本人环境	CentOS 7.6 64bit
将在三无环境下直接安装并使用Yapi系统
Yapi 使用 mongodb 作为数据库,由于 Yapi 一般在公司内部使用,搭建单机版 mongodb 即可满足需求

1 安装docker

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce
systemctl start docker

2 安装docker-compose

1、可以从官方 Docker Compose GitHub 仓库获取最新的发布版本:
curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
请将 1.29.2 替换为你希望安装的 Docker Compose 的版本号。

2、设置执行权限:
确保下载的 docker-compose 文件有执行权限:
sudo chmod +x /usr/local/bin/docker-compose

3、验证安装:
验证 docker-compose 是否正确安装:
docker-compose --version

3 新建docker-compose.yml

vim docker-compose.yml

version: "3.5"
services:
  mongodb:
    container_name: mongodb
    image: mongo:latest
    restart: always
    ports:
      - 27017:27017
    environment:
      - MONGO_INITDB_ROOT_USERNAME=admin
      - MONGO_INITDB_ROOT_PASSWORD=123456
    volumes:
      - /app/yapi/mongodb_data:/data/db
    networks:
      - yapi_net
    #  增加启动参数,--auth,表示连接 mongodb 需要用户名和密码
    command:
      - "--auth"
 
  yapi:
    image: jayfong/yapi:latest
    container_name: yapi
    restart: always
    ports:
      - 3000:3000
    environment:
  		 # 随便设置一个账号(账号是邮箱的格式)
      - YAPI_ADMIN_ACCOUNT=a@qq.com
   		# 设置账号的密码
      - YAPI_ADMIN_PASSWORD=admin
			# 禁用注册功能  这样的话就只有上面这个用户可以登陆,如果有其他用户需求,将此注释或者直接去掉即可
      # - YAPI_CLOSE_REGISTER=true
      # 设置连接 mongdb 的服务器地址,可以使用容器内部的 mongodb 服务名称
      - YAPI_DB_SERVERNAME=mongodb
      # mongoDB的连接信息
      - YAPI_DB_PORT=27017
      - YAPI_DB_DATABASE=yapidb
      - YAPI_DB_USER=admin
      - YAPI_DB_PASS=123456
      - YAPI_DB_AUTH_SOURCE=admin
      #- YAPI_DB_CONNECT_STRING="mongodb://admin:123456@mongodb:27017/yapidb?authSource=admin"
			# 禁用发送邮件功能
      - YAPI_MAIL_ENABLE=false
			# # 禁用 LDAP 登录功能
      - YAPI_LDAP_LOGIN_ENABLE=false
			# 使用插件(为空表示不使用)
      - YAPI_PLUGINS=[]
    networks:
      - yapi_net
    depends_on:
      - mongodb
 
networks:
  yapi_net:
    driver: bridge
不需要在 mongodb 中提前创建数据库,启动服务后会自动创建并初始化所配置的 mongodb 数据库、以及相关表和数据。
上述参数代码如果需要直接复制到linux环境中最好将注释先行去掉之后在复制到配置文件中即可

4 启动

docker-compose up -d # 启动
docker-compose stop  # 停止
docker-compose rm    # 删除

5 访问

http://127.0.0.1:3000/        或者本地ip:3000即可
输入邮箱:为上述注释的邮箱账号
输入密码:admin
  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是使用docker-compose搭建lnmp的步骤: 1.创建一个项目目录,例如lnmp,进入该目录并创建一个docker-compose.yml文件。 2.在docker-compose.yml文件中定义三个服务:nginx、php和mysql。其中,nginx服务使用官方的nginx镜像,php服务使用自己编译的php-fpm镜像,mysql服务使用官方的mysql镜像。 3.在docker-compose.yml文件中定义三个网络:frontend、backend和mysql。其中,frontend网络用于连接nginx和php服务,backend网络用于连接php和mysql服务,mysql网络用于连接mysql服务。 4.在docker-compose.yml文件中定义三个卷:nginx-conf、nginx-logs和php-src。其中,nginx-conf卷用于存放nginx的配置文件,nginx-logs卷用于存放nginx的日志文件,php-src卷用于存放php的源代码。 5.在docker-compose.yml文件中定义三个环境变量:MYSQL_ROOT_PASSWORD、MYSQL_DATABASE和MYSQL_USER。其中,MYSQL_ROOT_PASSWORD用于设置mysql的root用户密码,MYSQL_DATABASE用于设置mysql的默认数据库,MYSQL_USER用于设置mysql的普通用户。 6.在docker-compose.yml文件中定义三个挂载点:./nginx.conf:/etc/nginx/nginx.conf、./nginx-logs:/var/log/nginx和./php-src:/var/www/html。其中,./nginx.conf用于挂载nginx的配置文件,/nginx-logs用于挂载nginx的日志文件,./php-src用于挂载php的源代码。 7.在项目目录中创建一个nginx.conf文件,用于配置nginx的虚拟主机。 8.在项目目录中创建一个index.php文件,用于测试php服务是否正常工作。 9.在项目目录中运行docker-compose up命令,启动lnmp服务。 10.在浏览器中访问http://localhost,即可看到php服务返回的内容。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值