一份前端工程师的自动化部署指南03-docker与jenkins的安装

105 阅读3分钟

环境准备好之后,我们就可以在shell工具上安装docker和Jenkins了

安装docker

首先要先安装device-mapper-persistent-datalvm2 两个依赖

device-mapper-persistent-data 是 Linux 下的一个存储驱动, Linux 上的高级存储技术。 Lvm 的作用则是创建逻辑磁盘分区。这里我们使用 CentOS 的 Yum 包管理器安装两个依赖:

yum install -y yum-utils device-mapper-persistent-data lvm2

依赖安装完毕后,我们将阿里云的 Docker 镜像源添加进去。可以加速 Docker 的安装。

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

然后安装docker

yum install docker-ce -y

安装完成之后 运行 docker -v, 如果显示当前版本号,就代表安装成功了

image.png 安装完毕,我们就可以使用Linux的进程管理服务命令 systemctl 启动来启动 Docker 了。

systemctl start docker
systemctl enable docker

下面是一些常用的docker命令

docker ps # 查看当前有哪些容器
docker build -t [镜像名称] [路径] # 构建镜像
docker run -d -p 80:8000 [自定义的容器名称] # 启动容器,暴露出去的80端口映射到容器内的8000端口
docker restart [容器名称或者id] # 重启容器
docker images # 查看所有镜像
docker rm [容器id] # 删除容器
docker rmi [镜像id] # 删除镜像
docker exec -it [容器id] /bin/bash # 进入到容器 xxxx是docker的id前四位
docker cp [容器id]:/etc/nginx/nginx.conf /front/ # 从容器内拷贝文件到本地的front文件夹下

附一篇不错的docker介绍文档 Docker 从入门到实践

安装jenkins

Jenkins 是一个基于 Java 语言开发的持续构建工具平台,主要用于持续、自动的构建/测试你的软件和项目 jenkins基于java的,所以这里要先安装java环境

yum install -y java

然后使用java -version查看安装状态。

image.png 如果出现openjdk的版本号,就代表java环境安装好了。

下面开始安装jenkins (网络不好可能会安装失败,多试几次)

# 若没有wget 先安装wget yum install wget
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo --no-check-certificate
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

yum install -y jenkins

image.png 安装好jenkins之后,使用service jenkins start启动jenkins(第一次启动时会等待一会)

service jenkins restart restart  # 重启 Jenkins
service jenkins restart stop     # 停止 Jenkins

启动之后然后默认ip:8080 访问 这里需要先关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

初始化jenkins配置

第一次访问时需要解锁jenkins

image.png 复制地址,然后到服务器上查看密码

cat /var/lib/jenkins/secrets/initialAdminPassword

得到密码后,复制下来粘贴到解锁页面的管理员密码处。 然后进入自定义jenkins,选择安装推荐的插件进行安装。如果网络不好可以跳过安装,后面在jenkins的配置里面再安装

image.png 如果速度慢可以切换源

sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' /var/lib/jenkins/updates/default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' /var/lib/jenkins/updates/default.json

如果网络不好就会出现我这种情况,只能等网络好时再去下载了。

image.png 继续下一步会提示创建管理员账号,创建完成之后就是配置url,默认8080就行,然后重启就完成了初始化。

测试

jenkins初始化完成知乎,我们就可以建一个任务,测试一下了。

  1. 点击新建任务

image.png 2. 然后输入任务名称,选择构建一个自由风格的软件项目,点击确认

image.png 3. 我们建一个用docker拉去node镜像的任务

image.png 4. 此时可能会出现由于无访问权限构建失败的问题,此时我们需要添加一个docker用户组

image.png

sudo groupadd docker    # 新增docker用户组
sudo gpasswd -a jenkins docker # 将当前用户添加至docker用户组
newgrp docker # 更新docker用户组

加入后,重启Jenkins: sudo service jenkins restart 重启之后再次构建就成功了。

image.png

下一章讲使用node代理前端静态资源