本次實驗的環境爲Ubuntu 16.04,Jenkins 2.8.3java
一、安裝sshmysql
sudo apt-get update # 更新軟件源 sudo apt-get install openssh-server # 安裝ssh sudo ps -e |grep ssh ## 查詢是否啓動 ,若是沒有啓動 sudo service ssh start 啓動 使用gedit修改配置文件」/etc/ssh/sshd_config」 獲取遠程ROOT權限 打開」終端窗口」,輸入」sudo gedit /etc/ssh/sshd_config「
–>回車–>把配置文件中的」PermitRootLogin without-password「加一個」#」號,把它註釋掉
–>再增長一句」PermitRootLogin yes「
–>保存,修改爲功
查看ip:git
ifconfig
二、安裝vimsql
sudo apt-get install vim
三、本地使用ssh工具或者git bash遠程鏈接數據庫
ssh root@47.95.0.243 -p 22
這裏推薦一個不錯的ssh工具,基於Java開發,叫FinalShell,下載地址http://www.hostbuf.com/。自帶加速海外鏈接功能。apache
四、安裝jdkubuntu
sudo apt-get install openjdk-8-jdk
java -version # 查看是否安裝成功
openjdk的安裝目錄在 /usr/lib/jvm/java-8-openjdk-amd64vim
五、安裝mavenwindows
最新版本爲3.6.0瀏覽器
wget http://apache.communilink.net/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz ## 下載 tar vxf apache-maven-3.5.0-bin.tar.gz ## 解壓 mv apache-maven-3.5.0 /usr/local/maven3 ## 移動
修改環境變量
在/etc/profile 中添加如下幾行
MAVEN_HOME=/usr/local/maven3 #此處根據你的maven安裝地址修改
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
執行source /etc/profile使環境變量生效
運行mvn -v驗證maven是否安裝成功
六、安裝git
sudo apt-get install git # 安裝git git config --global user.name "zsh" git config --global user.email "43240825@qq.com"
七、關閉防火牆
sudo ufw status # 查看防火牆狀態
sudo ufw disable #關閉防火牆
active爲開啓狀態。inactive爲關閉狀態
八、安裝MySQL(非必需)
sudo apt-get update
sudo apt-get install mysql-server
在彈出的頁面中輸入兩次數據庫root用戶的密碼便可。
修復數據庫中文亂碼問題
修改/etc/mysql/my.cnf,加入下面這幾行
[mysqld] character_set_server=utf8 [mysql] default-character-set= utf8 [client] default-character-set = utf8
重啓數據庫:
service mysql restart
查詢數據庫字符編碼
mysql -uroot -p
show variables like '%character%';
自此中文亂碼問題已經修復。
通常阿里雲或者騰訊雲買的服務器,Ubuntu 16.04 中自帶ssh和vim。
下載 https://pkg.jenkins.io/debian-stable/
sudo apt-get update
sudo apt-get install jenkins
或者離線下載以後,上傳至服務器,此處我放在了 /opt
啓動服務
默認啓動在8080 java -jar jenkins.war & 啓動在指定端口能夠 nohup java -jar jenkins.war --httpPort=8080 &
Jenkins 就啓動成功了!它的war包自帶Jetty服務器
第一次啓動Jenkins時,出於安全考慮,Jenkins會自動生成一個隨機的按照口令。注意控制檯輸出的口令,複製下來,而後在瀏覽器輸入密碼:
由於項目是啓動在 ubuntu 系統裏,因此咱們在外面能夠用服務器ip訪問
http://47.95.0.243:8080
此處注意,若是沒有給服務器防火牆打開8080端口,是無法訪問的。
輸入上面的密碼
進入用戶自定義插件界面,建議選擇安裝官方推薦插件,由於安裝後本身也得安裝:
等待一段時間以後,插件安裝完成,若是有部分插件未安裝成功,不比擔憂,繼續配置用戶名密碼:
進入 系統管理 -> 全局工具配置
一、配置jdk
二、配置git
三、配置maven
一、首頁點擊新建:輸入項目名稱
若是你沒有第二個選項,須要安裝 Maven Integration 插件
二、勾選丟棄舊的構建,選擇是否備份被替換的舊包。我這裏選擇備份最近的10個
三、源碼管理,選擇git,配置Git相關信息
四、構建環境中勾選「Add timestamps to the Console Output」,代碼構建的過程當中會將日誌打印出來
五、在Build中輸入打包前的mvn命令,如:
clean install -Dmaven.test.skip=true -Ptest
六、Post Steps 選擇 Run only if build succeeds
七、點擊Add post-build step,選擇 Excute Shell
cd /home/admin/Jenkins-in #根據本身stop.sh、replace.sh腳本地址寫 sh stop.sh sh replace.sh BUILD_ID=dontKillMe nohup java -jar /home/admin/workspace/personal-0.0.1-SNAPSHOT.jar & #根據本身jar包的名稱、地址修改
stop.sh
# 將應用中止 #stop.sh #!/bin/bash echo "Stopping SpringBoot Application" pid=`ps -ef | grep personal-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}'` if [ -n "$pid" ] then kill -9 $pid fi #此處personal-0.0.1-SNAPSHOT.jar根據本身的jar包名稱修改
replace.sh
#replace.sh 用於將上次構建的結果備份,而後將新的構建結果移動到合適的位置 #!/bin/bash # 先判斷文件是否存在,若是存在,則備份 file="/www/server/workspace/autumn-0.0.1-SNAPSHOT.jar" if [ -f "$file" ] then mv /home/admin/workspace/personal-0.0.1-SNAPSHOT.jar.`date +%Y%m%d%H%M%S` fi mv /root/.jenkins/workspace/hello/target/personal-0.0.1-SNAPSHOT.jar /home/admin/workspace/personal-0.0.1-SNAPSHOT.jar #此處 /home/admin/workspace/personal-0.0.1-SNAPSHOT.jar根據本身實際jar包名稱和路徑修改
此處若是使用windows的notepad++寫好以後再上傳上去,有可能出現一個錯誤
stop.sh: Syntax error: end of file unexpected (expecting "then")
解決方案
在vim中修改下文件的格式就行了,直接輸入":",而後在":"以後輸入"set ff"以下圖所示
把格式改成unix,方法是輸入":set ff=unix",也能夠輸入":set fileformat=unix"以下圖所示。
輸入完以後,回車便可完成切換格式。而後咱們再輸入":set ff"來查看格式,以下圖所示,能夠看到當前腳本格式變成了咱們想要的"unix"了。
此時就沒有問題了。
左側有構建狀態,藍色表示成功,紅色表示失敗。
點進去能夠查看本次構建信息,點擊左側的控制檯日誌。
訪問項目,成功!