Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >docker安装easy-mock

docker安装easy-mock

作者头像
summerking
发布于 2022-09-19 06:18:10
发布于 2022-09-19 06:18:10
38300
代码可运行
举报
文章被收录于专栏:summerking的专栏summerking的专栏
运行总次数:0
代码可运行

# 本次使用docker-compose安装easy-mock

# 1.安装docker

https://www.runoob.com/docker/ubuntu-docker-install.html 配置阿里云镜像:https://blog.csdn.net/weixin_44533129/article/details/105982254

# 2.安装docker-compose

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 

# 3.添加执行权限

sudo chmod +x /usr/local/bin/docker-compose

# 4.查看是否安装成功

docker-compose version

# 5.创建两个文件docker-compose.yml,production.json

任意选择一个文件夹或者自己创建,在此文件夹创建这两个文件,并分别写入以下内容 docker-compose.yml 注意:根据自己的创建的文件位置,修改注释中文件位置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
version: '3'

services:
  mongodb:
    image: mongo:3.4.1
    volumes:
      # ./data/db 数据库文件存放地址,根据需要修改为本地地址
      - './data/db:/data/db'
    networks:
      - easy-mock
    restart: always

  redis:
    image: redis:4.0.6
    command: redis-server --appendonly yes
    volumes:
      # ./data/redis redis 数据文件存放地址,根据需要修改为本地地址
      - './data/redis:/data'
    networks:
      - easy-mock
    restart: always

  web:
    image: easymock/easymock:1.6.0
    command: /bin/bash -c "npm start"
    ports:
      - 7300:7300
    volumes:
      # 日志地址,根据需要修改为本地地址
      - './logs:/home/easy-mock/easy-mock/logs'
      # 配置地址,请使用本地配置地址替换
      # - './production.json:/home/easy-mock/easy-mock/config/production.json'
    networks:
      - easy-mock
    restart: always

networks:
  easy-mock:

production.json
{
    "port": 7300,
    "host": "0.0.0.0",
    "pageSize": 30,
    "proxy": false,
    "db": "mongodb://mongodb/easy-mock",
    "unsplashClientId": "",
    "redis": {
      "keyPrefix": "[Easy Mock]",
      "port": 6379,
      "host": "redis",
      "password": "",
      "db": 0
    },
    "blackList": {
      "projects": [],
      "ips": []
    },
    "rateLimit": {
      "max": 1000,
      "duration": 1000
    },
    "jwt": {
      "expire": "14 days",
      "secret": "shared-secret"
    },
    "upload": {
      "types": [".jpg", ".jpeg", ".png", ".gif", ".json", ".yml", ".yaml"],
      "size": 5242880,
      "dir": "../public/upload",
      "expire": {
        "types": [".json", ".yml", ".yaml"],
        "day": -1
      }
    },
    "ldap": {
      "server": "",
      "bindDN": "",
      "password": "",
      "filter": {
        "base": "",
        "attributeName": ""
      }
    },
    "fe": {
      "copyright": "",
      "storageNamespace": "easy-mock_",
      "timeout": 25000,
      "publicPath": "/dist/"
    }
  }

# 6.在当前目录下创建数据目录和日志目录并且给他们赋予权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mkdir -p data/db
mkdir -p data/redis
mkdir logs
chmod -R 777 当前目录

# 7.安装镜像与创建容器

docker-compose up

# 8.访问

如果部署本地,则访问localhost:7300 如果部署服务器,则访问 服务器ip:7300

# 9.停止和启动

需要到当前目录下,与docker-compose.yml同级,进行启动停止

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
docker-compose stop
docker-compose start

验证: 新建docker-compose.yml

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
version: '3'

services:
  mongodb:
    image: mongo:3.4.1
    volumes:
      - ./data/db 
      - './data/db:/data/db'
    networks:
      - easy-mock
    restart: always
    
  redis:
    image: redis:4.0.6
    command: redis-server --appendonly yes
    volumes:
      - ./data/redis redis 
      - './data/redis:/data'
    networks:
      - easy-mock
    restart: always

  web:
    image: easymock/easymock:1.6.0
    command: /bin/bash -c "npm start"
    ports:
      - 7300:7300
    volumes:
      - './logs:/home/easy-mock/easy-mock/logs'
      - './production.json:/home/easy-mock/easy-mock/config/production.json'
    networks:
      - easy-mock
    restart: always

networks:
  easy-mock:

新建date logs production.json

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mkdir -p data/db
mkdir -p data/redis
mkdir logs
chmod -R 777 当前目录

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
production.json
{
    "port": 7300,
    "host": "0.0.0.0",
    "pageSize": 30,
    "proxy": false,
    "db": "mongodb://mongodb/easy-mock",
    "unsplashClientId": "",
    "redis": {
      "keyPrefix": "[Easy Mock]",
      "port": 6379,
      "host": "redis",
      "password": "",
      "db": 0
    },
    "blackList": {
      "projects": [],
      "ips": []
    },
    "rateLimit": {
      "max": 1000,
      "duration": 1000
    },
    "jwt": {
      "expire": "14 days",
      "secret": "shared-secret"
    },
    "upload": {
      "types": [".jpg", ".jpeg", ".png", ".gif", ".json", ".yml", ".yaml"],
      "size": 5242880,
      "dir": "../public/upload",
      "expire": {
        "types": [".json", ".yml", ".yaml"],
        "day": -1
      }
    },
    "ldap": {
      "server": "",
      "bindDN": "",
      "password": "",
      "filter": {
        "base": "",
        "attributeName": ""
      }
    },
    "fe": {
      "copyright": "",
      "storageNamespace": "easy-mock_",
      "timeout": 25000,
      "publicPath": "/dist/"
    }
  }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-10-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
LV.1
这个人很懒,什么都没有留下~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验