Skip to main content

YAPI

yum update && yum install autoconf automake bzip2 dpkg-dev file gcc-c++ gcc ImageMagick bzip2-devel glibc-devel libcurl-devel db4-devel libevent-devel libffi-devel gdbm-devel glib2-devel gmp-devel libjpeg-turbo-devel krb5-devel xz-devel ImageMagick-devel libmaxminddb-devel ncurses-devel libpng-devel postgresql-devel readline-devel sqlite-devel openssl-devel libtool libwebp-devel libxml2-devel libxslt-devel libyaml-devel make patch unzip xz zlib-devel
yum install ca-certificates curl netbase wget git
curl -sL https://rpm.nodesource.com/setup_14.x | sudo -E bash -
curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
yum install yarn nodejs -y
vi /etc/yum.repos.d/mongodb-org-4.4.repo
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc

yum install mongodb-org -y && service mongod start

db.createUser(
{
user: "test1",
pwd: "test1",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)

mkdir -p /yapi/vendors



cd /yapi/
git clone https://github.com/YMFE/yapi.git -b v1.10.2 vendors
cd vendors
npm install --registry https://registry.npm.taobao.org
#报错nosuchfile
rm -rf node_modules
npm cache clean --force
rm package-lock.json

#报错make: cc: Command not found yum install gcc-c++ npm install --registry https://registry.npm.taobao.org

####解决c++17报错

yum install -y gcc-c++ cmake
yum install centos-release-scl
yum install -y devtoolset-7
scl enable devtoolset-7 bash
g++ --version
npm install --registry https://registry.npm.taobao.org

##解决各种npm install yapi-plugin-gitlab-oauth2报错

npm install -g yapi-cli --registry https://registry.npm.taobao.org
npm install -g ykit --registry https://registry.npm.taobao.org
#npm uninstall react@16.9.0
npm install react@16.2.0
npm install swagger-client@3.5.1
#npm install yapi-plugin-gitlab-oauth2 --registry https://registry.npm.taobao.org
cp -a config_example.json  ../config.json
vi ../config.json
{
"port": "3000",
"adminAccount": "admin@admin.com",
"timeout": 120000,
"db": {
"servername": "127.0.0.1",
"DATABASE": "yapi",
"port": 27017,
"user": "test1",
"pass": "test1",
"authSource": ""
},
"mail": {
"enable": true,
"host": "smtp.163.com",
"port": 465,
"from": "***@163.com",
"auth": {
"user": "***@163.com",
"pass": "*****"
}
},
"plugins": [
{
"name": "gitlab",
"options": {
"host": "http://git",
"redirectUri": "http://yapi:3000/api/plugin/oauth2/callback",
"appId": "3f05fdf6c3dd5bb6eeac5185e944ccf87d957cabb538c895899d461149e5bd80",
"appSecret": "d2564d6e3862e91b75d229b7fa8cb6abff88fa8498d8449617578c1c99a4ca5f",
"accessToken": "4-4g_eH-i-B58LtaDx8Q",
"loginPath": "/api/v4/user",
"authPath": "/oauth/authorize",
"tokenPath": "/oauth/token",
"emailKey": "email",
"userKey": "username",
"emailPostfix": "@yapi.com"
}
}
]
}
cd  /yapi
yapi plugin --name yapi-plugin-gitlab
##解决报错precated since React 16.9.0
cp -a /yapi/vendors/.eslintrc.js /yapi/vendors/.eslintrc.js.bk
vi /yapi/vendors/.eslintrc.js

plugins: [
"react"
],
"settings": {
"react": {
"version": "detect"
}
},

yapi plugin --name yapi-plugin-gitlab

cd vendors
node server/app.js