5
先打个广告!!(不知道能不能打)腾讯IVWEB团队广招前端,大量hc,有兴趣的同学加我:chenxy712联系或发送简历至我邮箱:yvonnexchen@tencent.com

这里使用的是腾讯云的服务器,emmm,可以根据自己需求去申请购买,我这边选用的是广州节点 1核 2G 2M的。(不想太烧钱TAT)。公众号服务技术栈是基于node + mongodb的,下面具体说一下云服务器的的配置。

上一篇文章在这里?
【nodejs公众号开发记录】半小时带你开发微信公众号

服务器登录

$ ssh root@<your-server-host> -p 22

node安装

已经自带了yum

$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
$ nvm install v10
$ node -v

mongodb配置

1、配置yummongodb

$ vi /etc/yum.repos.d/mongodb-org-4.2.repo

2、添加配置信息

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

3、安装

$ sudo yum install -y mongodb-org

4、启动

$ systemctl start mongod.service

5、远程连接mongodb

$ vi /etc/mongod.conf

bindIp改成0.0.0.0

# network interfaces 
net: 
  port: 27017 
  bindIp: 0.0.0.0 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.

5、重启mongodb服务

$ sudo service mongod restart

具体参考:Install MongoDB Community Edition on Red Hat or CentOS

nginx配置

# 安装
$ sudo yum install nginx
# 设置开机启动
$ sudo systemctl enable nginx
# 启动
$ sudo systemctl start nginx
# 重启
$ sudo systemctl restart nginx
# 停止
$ sudo systemctl stop nginx

随后可以在/etc/nginx/nginx.conf配置路由。

使用Jenkens持续集成

安装

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
$ sudo yum install jenkins -y

jenkins需要依赖java,所以还需要装一下java

$ sudo yum install java-1.8.0-openjdk-devel -y

完成之后使用以下命令启动jenkins

$ systemctl start jenkins.service

启动之后打开<your-host>:8080配置jenkens任务,这里根据提示的步骤进行操作即可。

  • 安装基础插件:这个直接选新手上路的就行了,这一步需要注意由于国内服务器的关系,安装可能会失败,需要确保插件都装好了(没装好在系统配置页会有提示)
  • 用户名/密码配置

GitHub配置

打开系统配置页面,系统管理 > 系统配置。地址:http://<your-host>:8080/configure

配置环境变量
image.png
配置Github
image.png

1、点击添加,首先配置github用户信息,用以登陆校验,点击确定
image.png

2、再次点击添加,此时添加githubtoken,这个token的获取路径是https://github.com/settings/tokens。点击Generate new token,此时就会生成一段token了。需要记下来,因为之后就看不到了。

image.png

3、测试连接
image.png

点击测试连接,若看到Credentials verified for user ...就说明配置成功了。完成之后保存配置就可以了。

4、为项目添加webhook
进入项目仓库,点击Add webhook,注意将Playload URL修改为<your-server-host>:8080/github-webhook
image.png

5、创建任务
打开http://<your-host>:8080/view/all/newJob选择一个自由风格的任务开始创建。

具体配置如下:
image.png

然后需要添加一个可访问你这个项目的用户,具体步骤点击添加,然后添加的内容跟上文?配置Github > 1、配置github用户信息一样。
image.png

勾选GitHub Hook ...
image.png

填写shell命令
image.png

*6、构建失败排查
在构建执行shell命令时,会遇到command xxx not found情况。可以根据以下步骤确认排查。

  • 确保服务器已经配置了相应命令的包,且能正确执行命令
  • 是否已经配置了jenkens的环境变量,上文有提到
  • 是否添加软连接,比如command node not found,可以进入服务器
$ which node

> /root/.nvm/versions/node/v10.19.0/bin/node

# 添加软连接
ln -s /root/.nvm/versions/node/v10.19.0/bin/node /usr/bin/
  • 若出现sudo: no tty present and no askpass program specified
    参考这篇文章解决 > 传送门

这里就已经基本完成服务器配置了,有问题欢迎留言交流~谢谢观看


yvonne
1.3k 声望93 粉丝