持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第1天,点击查看活动详情
通过docker安装
拉取镜像jenkins/jenkins:lts
docker pull jenkins/jenkins:lts
一开始试过直接使用 docker pull jenkins。但是在运行时提示:
An error occurred during installation: No such plugin: cloudbees-folder
在docker中搜索jenkins后发现可以使用jenkins/jenkins:lts,于是使用这个镜像才没有出现这个问题。
运行jenkins
docker run \
-d \
--name jenkins \
-u root \
-p 9090:8080 \
-p 50000:50000 \
-v /home/workspace/jenkins:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
-v /usr/local/bin/docker-compose: /usr/local/bin/docker-compose \
jenkins/jenkins:lts
管理用户设置
-u root
是指定容器内部使用的用户身份,这里是将容器内的用户指定为root,这样才能在容器内部使用docker命令
docker命令映射
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
是将宿主机的docker命令映射到容器内,方便使用docker进行部署和镜像打包等。
存储目录映射
创建目录并设置权限
mkdir /home/workspace/jenkins
chown -R 1000:1000 /home/workspace/jenkins
-v /home/workspace/jenkins:/var/jenkins_home \
使用到的插件和拉取的代码等信息会存放在该目录,因此映射到宿主机,防止丢失。
清理存储目录
如果在安装过程中出现问题,比如像上面的No such plugin: cloudbees-folder,更换镜像后重新运行容器时,记得清理该目录下的文件。
rm -rf /home/workspace/jenkins/*
docker-compose映射
如果需要使用到docker-compose可以将宿主机的文件映射到容器。
-v /usr/local/bin/docker-compose: /usr/local/bin/docker-compose \
也可以进入容器后重新下载
curl -L https://get.daocloud.io/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod a+x /usr/local/bin/docker-compose
docker-compose --version
初始密码登录
进入网站,会提示密码存放地址,复制密码到网页。
- 在容器里可以通过:
cat /var/jenkins_home/secrets/initialAdminPassword
9544577c36514d75bdb4d7fd002375b1
获取密码
- 在宿主机中
cat /home/workspace/jenkins/secrets/initialAdminPassword
修改下载源
jenkins自带下载速度较慢,可以选择修改国内源
进入挂载目录下的updates,修改替换default.json中的
sed -i 's/http://updates.jenkins-ci.org/download/https://mirrors.tuna.tsinghua.edu.cn/jenkins/g' default.json && sed -i 's/http://www.google.com/https://www.baidu.com/g' default.json
安装插件
选择推荐的,或者选择插件