使用 Jenkins + GitHub + Nginx + HTTPS 搭建静态网站
Nginx 是一个高性能的 HTTP 和反向代理服务器,我们首先通过 yum 安装 nginx
$ sudo yum install epel-release
$ sudo yum install nginx
$ sudo /etc/init.d/nginx start
配置 Nginx
安装完成后,进入服务器的 /etc/nginx 找到 nginx.conf 配置文件,并创建一个 sites 目录用于存放网站的配置文件
$ mkdir sites
复制 conf.d 文件夹下的 default.conf 并重命名为 site.example.com
$ cp /etc/nginx/conf.d/default.conf /etc/nginx/sites/site.example.com
编辑 site.example.com
server {
listen 80;
server_name www.haoduoyu.cc;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
root /root/www/homepage/;
index index.html;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
然后修改 nginx.conf 文件
# include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites/*;
保存并退出后,执行
$ service nginx restart
静态网站配置就完成了
安装 Git$ yum install git-core
安装 NPM
$ yum -y install nodejs npm --enablerepo=epel
安装 Jenkins
Jenkins 是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上。我们通过 yum 安装 Java 和 Jenkins。
$ yum install java
$ wget -O /etc/yum.repos.d/jenkins.repo http://jenkins-ci.org/redhat/jenkins.repo
$ rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
$ yum install jenkins
配置 Jenkins
安装完成后,启动 Jenkins
$ service jenkins start
我们可以在 8080 端口访问到 Jenkins
然后在服务器的指定目录找到密码登录
/var/lib/jenkins/secrets/initialAdminPassword
按照默认配置安装插件
等待插件安装完成
完成配置,就可以登录 Jenkins 了。
为了能够与 GitHub 配合,我们还需要进入对 GitHub 进行一些设置。首先进入 Settings 界面选择 Personal Access Token 页面点击 Generate new token
进入项目设置界面配置 Webhooks,输入 Jenkins 服务器的 IP地址
再次进入 Jenkins 配置页添加 Github Server
点击 Add,选择 Secret text,并复制刚刚在 Github 生成的 token 到 Secret 中
我们可以点击 Test connection 来测试配置是否有效。
接下来,我们需要新建一个任务
配置源码管理
执行构建命令
为了能够执行脚本,我们还需要为 Jenkins 添加权限
$ vim /etc/sysconfig/jenkins
修改为
$JENKINS_USER="root"
然后执行
$ chown -R root:root /var/lib/jenkins
$ chown -R root:root /var/cache/jenkins
$ chown -R root:root /var/log/jenkins
$ service jenkins restart
最后点击保存,配置就算完成了。
当我们往设定的 GitHub 仓库 更新代码时,Jenkins 就会自动构建部署,省去了每次发布都要手动部署的烦恼。我们也可以在 Jenkins 网站中通过点击立即构建来构建应用。
配置 HTTPS下载 cerbot
$ git clone https://github.com/certbot/certbot
$ cd certbot
$ ./certbot-auto --help
生成免费证书
$ ./certbot-auto certonly --webroot --agree-tos -v -t --email 邮箱地址 -w 网站根目录 -d 网站域名
生成 dhparams
$ openssl dhparam -out /etc/ssl/certs/dhparams.pem 2048
nginx 配置
server {
listen 443 ssl;
server_name localhost;
ssl on;
ssl_certificate /etc/letsencrypt/live/www.haoduoyu.cc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.haoduoyu.cc/privkey.pem;
ssl_dhparam /etc/ssl/certs/dhparams.pem;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
root /root/www/homepage/;
index index.html;
}
}
重启 nginx 后就可以通过 HTTPS 访问网站了。
共同学习,写下你的评论
评论加载中...
作者其他优质文章