登录服务器(各个公司不同)

第一步:绑定风云令
第二步:配置vpn
第三步:登录堡垒机:ssh -l 用户名 内网IP 用户密码
第四步:登录应用服务器 ssh 用户名@内网IP 用户密码

部署服务

第1步:用nvm 安装nodeJs

安装nvm:

  1. curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

进入home目录:cd
创建.bashrc文件
✿ vi .bashrc
✿ i (编辑模式)或者 O (新建一行)
✿ export NVM_NODEJS_ORG_MIRROR=’https://npm.taobao.org/mirrors/node
✿ esc
✿ :wq! 或者 shift + z + z
✿ source .bashrc 或者. .bashrc (使bashrc生效)
安装Nodejs:

  1. #列出所有版本的nodejs
  2. nvm ls-remote --lts
  3. #安装最新版本的nodejs
  4. nvm install 8 --lts

第2步:安装git

  1. yum install -y git

第3步:安装pm2(带有负载均衡功能的Node应用的进程管理器)和mq-deployer(接收消息服务器)

  1. npm install -g pm2 mq-deployer
  2. # pm2启动mq-deployer

第4步:下载mq-deployer配置文件, 接收消息的服务

步骤一:进入部署程序的目录比如 /data
步骤二:在服务器上cd /data/mq-deployer 下载自己 mq-deployer 配置资源

  1. git clone 'https://github.com/Anmidan/mq-deployer'

mq-deployer.yml

  1. # mq-deployer consumer config
  2. uri: amqp://jenkins:jenkins@114.215.169.170:5672/%2F
  3. exchange: jenkins-v2
  4. tasks:
  5. #name: 子域名
  6. #destination: 代码存放路径
  7. #router: 与jenkens发送消息的接受地址一致
  8. - name: csc
  9. destination: /data/docker-ccms/www.stage
  10. router: ccms.csc.stage
  11. - name: csc
  12. destination: /data/docker-ccms/www.qa
  13. router: ccms.csc.qa

jenkins 部分配置

  1. # 发送一个消息,在 jenkins 端调用
  2. mq-deployer-send \
  3. --uri amqp://jenkins:jenkins@114.215.169.170:5672/%2F \
  4. --exchange jenkins-v2 \
  5. --router dw.dw-dashboard.qa \
  6. "{\"packageUrl\": \"http://xxxx/dist.tar.gz\"}"

pm2.yml

  1. apps:
  2. - name: mq-deployer
  3. script: mq-deployer-start
  4. args: ./mq-deployer.yml
  5. watch: .
  6. merge_logs: true
  7. log_date_format: YYYY-MM-DD HH:mm Z

第5步:启动mq-deployer

  1. mq-deployer-start mq-deployer.yml
  2. # 通常使用 pm2 启动,为简化命令参数,创建两个配置文件 pm2.yml 和 mq-deployer.yml
  3. # pm2 start pm2.yml -- mq-deployer.yml

第6步:安装 docker-nginx

步骤一:进入部署程序的目录比如 /data
步骤二:下载docker-nginx

  1. git clone 'https://github.com/Anmidan/docker-nginx'

步骤三:配置docker-nginx 配置文件 vim /data/docker-nginx/conf.d**/**default.conf

  1. server {
  2. listen 80 default_server;
  3. server_name 域名;
  4. location / {
  5. root /var/www;
  6. }
  7. # 配置代理
  8. location /服务名 {
  9. proxy_set_header Origin http://qa-api.shuyun.com;//跨域
  10. proxy_pass 服务地址;
  11. }
  12. }

第7步:安装docker-compose

  1. curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
  2. chmod +x /usr/local/bin/docker-compose

第8步:启动nginx

  1. docker-compose up -d
  2. # 备注:终止docker里面的服务 docker-compose down
  1. <br /> <br />------------------------------------------------------------------------<br />更新 2018.10.10

需求:再部署一个一级域名网站

步骤

1.提工单
2.新建jenkins服务
3.服务器mq-deployer 和docker-nginx 服务配置

问题和解决方法

1.配置mq-develop

  1. vim mq-deployer/mq-deployer.yml

改完以后报错,以为是mq-deployer的问题 于是卸载重新安装(npm uninstall -g mq-develop pm2;npm install -g mq-develop pm2)还是报错,看问题,是因为文件格式对tab和空格有严格要求
前端服务器部署 - 图1
修订版:
前端服务器部署 - 图2

2.配置docker-nginx

  1. vim conf.d/default.conf

前端服务器部署 - 图3

重启服务发现访问域名没有效果,18080服务端口没有打开
3.配置docker-compose.yml

  1. docker-compose ps

前端服务器部署 - 图4

配置docker-compose.yml文件,新增端口

  1. vim mq-deployer/mq-deployer.yml

前端服务器部署 - 图5

其他

1⃣️删除命令
rm -rf 文件名
2⃣️下载命令
curl -o channel-balance.tar.gz http://114.215.169.170:8081/userContent/channel-balance.production.tar.gz
3⃣️解压命令
tar -zxvf channel-balance.production.tar.gz
4⃣️查找文件
find name -
5⃣️文件copy 复制子目录文件到上级目录
cp -R 子目录/* ./