1. 容器化部署一套雲服務 第一講 Jenkins(Docker + Jenkins + Yii2 + 雲服務器))


容器化部署一套雲服務系列

一、購買服務器

服務器
caeef003da4fc505499634292d351089.png

二、登錄雲服務器


b5d19cf73b803087af3929409cd9eaae.png

三、安裝jenkins

sudo apt-get install openjdk-8-jdk
wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | sudo apt-key add -
echo deb http://pkg.jenkins.io/debian-stable binary/ | sudo tee /etc/apt/sources.list.d/jenkins.list
sudo apt-get update
sudo apt-get install jenkins
查看密碼
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
                b575fc179df742e89b41da9571e5f45e
sudo visudo
        jenkins ALL=(ALL) NOPASSWD: ALL
sudo systemctl start jenkins
sudo systemctl status jenkins
sudo systemctl restart jenkins

 

四、登錄jenkins

94.191.81.xxx:8080
3b34f858ef1f5d9a58c030e3cc8a22e6.png

4c2f7175cc3d124c8e24f3cf9d563787.png
b7943133a8da4ce2ebfd8d9efc0efa1b.png

 

 

 

 

 

b7943133a8da4ce2ebfd8d9efc0efa1b.png

五、創建任務

 

六、配置參數

1.配置選項參數

dev或production,后面執行shell命令的時候可以用到

配置branch參數,后面執行shell命令的時候可以用到

配置shell命令

七、部署

點擊Build with Parameter ,配置用於構建項目的參數

八、部署成功

 

九、遇到的問題

問題1. 訪問94.191.81.xxx:8080 頁面一直停留在SetupWizard

  • 解決方案:重啟Jenkins服務
    sudo systemctl restart jenkins

    構建失敗
    2eabfa17fb3fd4e2d8d740bd031e1e53.png
  • 原因:之前創建的任務 選擇的是構建一個多配置項目,應該選擇第一個“構建一個自由風格的軟件項目”

  解決方案:刪除jenkins的workspace,重新創建一個任務:構建一個自由風格的軟件項目

問題2.git pull 需要帳戶名密碼

ssh-keygen -t rsa -C jackson0585@163.com
cat ~/.ssh/id_rsa.pub

git config --global user.name "jackson0714"
git config --global user.email "jackson0585@163.com"
git config --global credential.helper store

git pull
輸入用戶名和密碼后,第二次不會再提示輸入

問題4.jenkins賬戶沒有權限

ubuntu@VM-0-17-ubuntu:/home/workspace/testProject$ sudo su jenkins
jenkins@VM-0-17-ubuntu:/home/workspace/testProject$ git pull
Username for 'https://github.com': ^C
jenkins@VM-0-17-ubuntu:/home/workspace/testProject$ 

解決方案:生成jenkins key

jenkins@VM-0-17-ubuntu:~$ ssh-keygen -t rsa -C jackson0585@163.com

問題5.Jenkins 找不到cnpm命令

Your branch is up-to-date with 'origin/develop'.
+ cd /home/workspace/flycloud/flycloud/backend/
+ cd /home/workspace/flycloud/flycloud/frontend/
+ sudo cnpm install
sudo: cnpm: command not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE

切換到jenkins用戶,執行cnpm提示找不到命令

sudo su jenkins
npm install cnpm -g --registry=https://registry.npm.taobao.org
報
The program 'npm' is currently not installed. To run 'npm' please ask your administrator to install the package 'npm'

解決方案:安裝npm

sudo apt-get install npm

提示node版本低,升級node版本

安裝方法:
1.產看node版本,沒安裝的請先安裝;
$ node -v
2.清楚node緩存;
$ sudo npm cache clean -f
3.安裝node版本管理工具'n';
$ sudo npm install n -g
4.使用版本管理工具安裝指定node或者升級到最新node版本;
$ sudo n stable (安裝node最新版本)
或安裝指定版本
$ sudo n (可以安裝node指定版本 sudo n 10.10.0)
5.使用node -v查看node版本,如果版本號改變為你想要的則升級成功。
![](images/screenshot_1536845880219.png)
版本號沒變,還需配置node環境變量
1.查看通過n安裝的node的位置;
$ which node (如:/usr/local/n/versions/node/6.12.3)
2.cd進入/usr/local/n/versions/node/ 你應該能看到你剛通過n安裝的node版本這里如:10.10.0;編輯/etc/profile;
$ vim /etc/profile
3.將node安裝的路徑(這里為:/usr/local/n/versions/node/10.10.0)添加到文件末尾;

#set node path
export NODE_HOME=/usr/local/n/versions/node/10.10.0
export PATH=$NODE_HOME/bin:$PATH

![](images/screenshot_1536845781670.png)
4.wq退出保存文件,編譯/etc/profile;

$ source /etc/profile

5.再次使用node -v查看node版本,不出意外版本號應該變為你想要的。
![](images/screenshot_1536846156322.png)

問題6../start.sh 沒有權限

./start.sh
bash: ./start.sh: Permission denied
解決方案:給該目錄添加權限
chmod 777 -R *

 


作  者: Jackson0714
出  處:http://www.cnblogs.com/jackson0714/
關於作者:專注於微軟平台的項目開發。如有問題或建議,請多多賜教!
版權聲明:本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接。
特此聲明:所有評論和私信都會在第一時間回復。也歡迎園子的大大們指正錯誤,共同進步。或者直接私信
聲援博主:如果您覺得文章對您有幫助,可以點擊文章右下角推薦一下。您的鼓勵是作者堅持原創和持續寫作的最大動力!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM