1. 容器化部署一套云服务 第一讲 Jenkins(Docker + Jenkins + Yii2 + 云服务器))

容器化部署一套云服务系列

1. 容器化部署一套云服务之Jenkins

一、购买服务器

服务器

二、登录云服务器

三、安装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

五、创建任务

六、配置参数

1.配置选项参数

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

配置branch参数,后面执行shell命令的时候可以用到

配置shell命令

七、部署

点击Build with Parameter ,配置用于构建项目的参数

八、部署成功

九、遇到的问题

问题1. 访问94.191.81.xxx:8080 页面一直停留在SetupWizard

  • 解决方案:重启Jenkins服务 sudo systemctl restart jenkins 构建失败
  • 原因:之前创建的任务 选择的是构建一个多配置项目,应该选择第一个“构建一个自由风格的软件项目”

  解决方案:删除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 *

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券