Nginx靜態(tài)服務(wù)器配置
- 多站點(diǎn)配置
mkdir /etc/nginx/vhost
- 創(chuàng)建站點(diǎn)配置文件與反向代理
- 創(chuàng)建配置文件
vi /etc/nginx/vhost/test1.conf
- 寫(xiě)入下面配置
創(chuàng)建項(xiàng)目存放目錄 /data/www/mock/dist
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /data/www/mock/dist; //靜態(tài)資源
index index.html index.htm;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 80;
server_name localhost/api;
location /{
proxy_pass http://127.0.0.1:3000;反向代理
}
}
- 引入站點(diǎn)配置文件
vim /etc/nginx/nginx.conf
在http下末尾添加 include /etc/nginx/vhost/*.conf;
http {
...
include /etc/nginx/vhost/*.conf;
}
- 重啟nginx
service nginx restart
jenkins自動(dòng)化部署
Jenkins和業(yè)務(wù)在不同的服務(wù)器
1. 安裝ssh插件
首先,先在Jenkins上裝一個(gè)插件Publish Over SSH付呕,我們將通過(guò)這個(gè)工具實(shí)現(xiàn)服務(wù)器部署功能计福。
2. 生成服務(wù)器上的密鑰
cd ~
ssh-keygen -t rsa
3. 添加公鑰
將生成的公鑰添加到需要發(fā)布的業(yè)務(wù)服務(wù)器的特定用戶(hù)的.ssh/authorized_keys文件中捧请。
3. 插件配置
系統(tǒng)管理-系統(tǒng)設(shè)置里找到Publish over SSH這一項(xiàng)。 重點(diǎn)參數(shù)說(shuō)明:
注意:Path to key 和 Key 二選一填寫(xiě)就可以了
https://wiki.jenkins.io/display/JENKINS/Publish+Over+SSH+Plugin
Passphrase:密碼(key的密碼棒搜,沒(méi)設(shè)置就是空)
Path to key:key文件(私鑰)的路徑
Key:將私鑰復(fù)制到這個(gè)框中(path to key和key寫(xiě)一個(gè)即可)
SSH Servers的配置:
SSH Server Name:標(biāo)識(shí)的名字(隨便你取什么)
Hostname:需要連接ssh的主機(jī)名或ip地址(建議ip)
Username:用戶(hù)名
Remote Directory:遠(yuǎn)程目錄(上面nginx對(duì)應(yīng)的目錄)
高級(jí)配置:
Use password authentication, or use a different key:勾選這個(gè)可以使用密碼登錄疹蛉,不想配ssh的可以用這個(gè)先試試
Passphrase / Password:密碼登錄模式的密碼
Port:端口(默認(rèn)22)
Timeout (ms):超時(shí)時(shí)間(毫秒)默認(rèn)300000
來(lái)源:https://juejin.im/post/5ad1980e6fb9a028c42ea1be
Jenkins和業(yè)務(wù)在同一個(gè)服務(wù)器
將構(gòu)建立好的項(xiàng)目復(fù)制到nginx靜態(tài)資源目錄中,但jenkins用戶(hù)操作其它目錄是需要權(quán)限的力麸。所以要先給權(quán)限可款。讓jenkins以root或?qū)?yīng)用戶(hù)執(zhí)行
打開(kāi)配置文件
vi /etc/sysconfig/jenkins
- 修改Jenkins配置文件 改為root
#Unix user account that runs the Jenkins daemon
#Be careful when you change this, as you need to update
#permissions of $JENKINS_HOME and /var/log/jenkins.
JENKINS_USER="root"
- 修改Jenkins相關(guān)文件夾用戶(hù)權(quán)限
chown -R root:root /var/lib/jenkins/
chown -R root:root /var/cache/jenkins/
chown -R root:root /var/log/jenkins/
- 重啟Jenkins(若是其他方式安裝的jenkins則重啟方式略不同
service jenkins restart
- 給jenkins用戶(hù)添加相應(yīng)文件的權(quán)限
chown -R jenkins <path>
- 構(gòu)建腳本增加刪除和復(fù)制到指定目錄
npm install
rm -rf dist
npm run build
rm -rf /data/www/mock/
cp -a dist /data/www/mock/