跟我一起學docker(11)--jenkins+github+Docker
這次要做的就是我本地git push到github後,jenkins自動構建
註意:本次課程jenkins必須有公網ip,保證github可以通知jenkins構建。
公網ip服務器
登陸github
https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/
一路回車
1.配置Github
設置秘鑰登錄
生成密鑰:
在github設置密鑰(公鑰):
設置帶權限的access_token
選擇新建token
設置token:
生成token密鑰:
2.配置Jenkins
安裝git、github插件
配置系統環境
添加token密鑰:
驗證通過:
已經變更了名稱不在上一長串了:
Job配置
添加密鑰(私鑰)
#存儲路徑
SAVE_PATH=/tmp/job_files
#保存文件名稱
FILE_NAME=`date "+%Y%m%d"`_${BUILD_NUMBER}.jar
#進入工作空間
echo "workspace = $WORKSPACE"
#docker 控制
sudo docker run --rm --name my-maven-project -v $WORKSPACE:$WORKSPACE maven:3.2-jdk-7 mvn clean install -f $WORKSPACE/pom.xml
sudo chown -R jenkins:jenkins $WORKSPACE
sudo chown -R jenkins:jenkins $SAVE_PATH
mv $WORKSPACE/target/*.jar $SAVE_PATH/$FILE_NAME
java -cp $SAVE_PATH/$FILE_NAME com.mycompany.helloworld.App
mv $WORKSPACE/target/*.jar $SAVE_PATH/$FILE_NAME
java -cp $SAVE_PATH/$FILE_NAME com.mycompany.helloworld.App
3.容器配置
更改主機系統配置
Docker的安裝參考我的:手把手跟我一起學docker(一)
常見報錯:
A:sudo: sorry, you must have a tty to run sudo
解決方式:
#Default requrrity(文件路徑:/etc/sudoers)
圖33
B:sudo: no tty present and no askpass program specified
解決方式:
Username ALL = NOPASSWD:ALL
跟我一起學docker(11)--jenkins+github+Docker