搭建 Jenkins
在本地搭建 Jenkins
.
參考 jenkins 安裝
配置 SSH
配置 ssh
, 程序在 Jenkins
服務(wù)器打包完之后踩蔚,發(fā)布到目標(biāo)服務(wù)器上.
Manage Jenkins
-> Configure System
-> Publish over SSH
-> Add
Selection_011.png
這里需要特別注意的是 Remote Directory
.
此目錄必須存在撒强,不會(huì)自動(dòng)創(chuàng)建. 而且發(fā)布機(jī)(Jenkins)只能將文件放在此目錄下.
配置項(xiàng)目
- 創(chuàng)建一個(gè)項(xiàng)目
Selection_012.png
- 輸入項(xiàng)目名字扒袖,選擇
Freestyle project
Selection_013.png
- 添加項(xiàng)目倉(cāng)庫(kù)
Selection_014.png
- 配置構(gòu)建
Selection_015.png
Selection_016.png
project=blog
desc_name=/tmp/$project.$BUILD_ID.$BUILD_NUMBER.tar.gz
composer install --no-dev
tar -cvz --exclude='.git' --exclude=$desc_name -f $desc_name .
mv $desc_name .
這里使用 .
而不是 ./*
, ./*
不會(huì)壓縮隱藏文件
項(xiàng)目里會(huì)包含配置文件 .env.example
這種隱藏文件.
- 構(gòu)建完之后,發(fā)布到目標(biāo)服務(wù)器
Selection_017.png
Selection_018.png
PREFIX=/data/www
LIB=$PREFIX/lib
TIME=$(date +%Y%m%d%H%M%S)
DESC_NAME=blog."$TIME"
DESC=$LIB/$DESC_NAME
LINK_NAME=blog
LINK_DESC=$PREFIX/$LINK_NAME
mkdir -p $DESC
tar -xzf /tmp/demo/blog.$BUILD_ID.$BUILD_NUMBER.tar.gz -C $DESC
cd $DESC
cp .env.example .env
ln -snf $DESC $LINK_DESC
配置完成,保存,點(diǎn)擊 Build Now
就可以了.