# compose **Repository Path**: berlinwong/compose ## Basic Information - **Project Name**: compose - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-01-19 - **Last Updated**: 2022-01-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 记录一次在Docker搭建Easy Mock ## 搭建 Easy Mock > 因为 Easy Mock 依赖 Redis 和 MongoDB,因此本地环境使用 docker-compose 来搭建 Easy Mock 应该算是最佳实践了。 ### Step1. 安装 docker-compose 1. 首先你得确定拥有 docker 环境,*如果你是 Windows / Mac 用户,那么安装客户端,就会自带 docker-compose 了*。 2. 因为本次我们是在服务器搭建,当前服务器系统是 CentOS ,所以我们需要自行安装 docker-compose。 3. 下载当前稳定版本的 `docker-compose`,但是由于Github访问速度过慢,我已经将文件下载至本地,同时上传到了[Gitee](https://gitee.com/berlinwong/compose/blob/master/docker-compose-linux-x86_64),觉得慢的朋友可以尝试下载后自行上传至服务器。 下载指令可参考: ```bash $sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose ``` 上传指令可参考: ```bash $scp /Downloads/docker-compose-linux-x86_64 username@ServerIP:/home/zywang ``` 前沿检查,确保下载的``docker-compose`存在`/usr/local/bin`目录下,此处指令略。 下载完成后赋予docker-compose可执行权限,指令可参考如下: ```bash $sudo chmod +x /usr/local/bin/docker-compose ``` 赋予权限后,可检查docker-compose版本以确保安装无误,指令如下: ```bash $docker-compose version ``` 正常情况下,出现(出现版本号即为正常): ![image-20220119221040311](https://gitee.com/berlinwong/picgo/raw/master/img/20220119221040.png) **第一步至此结束** --- ### Step2. 通过`.yml`安装Easy Mock主体 > 通过配置docker-compose.yml 以安装redis、MongoDB、 Easy Mock主体 在同级目录下,创建docker-compose.yml,可参考如下指令: ```bash sudo vi docker-compose.yml ``` 内容可参考如下: ```yaml version: '3' services: mongodb: image: mongo:3.4.1 volumes: # /apps/easy-mock/data/db 是数据库文件存放地址,根据需要修改为本地地址 - '/apps/easy-mock/data/db:/data/db' networks: - easy-mock restart: always redis: image: redis:4.0.6 command: redis-server --appendonly yes volumes: # /apps/easy-mock/data/redis 是 redis 数据文件存放地址,根据需要修改为本地地址 - '/apps/easy-mock/data/redis:/data' networks: - easy-mock restart: always web: image: easymock/easymock:1.6.0 # easy-mock 官方给出的文件,这里是 npm start,这里修改为 npm run dev command: /bin/bash -c "npm run dev" ports: - 6381:7300 volumes: # 日志地址,根据需要修改为本地地址 - '/apps/easy-mock/logs:/home/easy-mock/easy-mock/logs' networks: - easy-mock restart: always networks: easy-mock: ``` 不出意外,当前文件应存在(后面两个): ![image-20220119221524208](https://gitee.com/berlinwong/picgo/raw/master/img/20220119221524.png) **准备工作至此结束。** --- ### Step3. 创建容器 > 以上环节没有问题的话,第三步我们进行容器创建 **说明:** redis、DB未映射端口,如果需要的话,可自行映射; web端口在`.yml`中设置了`0.0.0.0:7300->6381`; 开始正式创建容器,参考以下指令: ```bash $docker-compose up -d ``` 结束,使用`docker ps` 查看容器运行情况... ## 总结 搭建Easy Mock是在学习完Docker基本操作后的练手操作,衔接Linux的基本指令,在完全命令行的情况下,慢慢熟悉这种操作模式。