如何使用docker构建jenkins镜像并运行容器

发布时间:2021-07-27 22:23:08 作者:chen
来源:亿速云 阅读:181

如何使用Docker构建Jenkins镜像并运行容器

在现代软件开发中,持续集成和持续交付(CI/CD)已经成为不可或缺的一部分。Jenkins作为一款开源的自动化服务器,广泛应用于CI/CD流程中。而Docker作为一种轻量级的容器化技术,能够帮助开发者快速构建、部署和运行应用程序。本文将详细介绍如何使用Docker构建Jenkins镜像并运行容器。

1. 准备工作

在开始之前,确保你已经安装了Docker。如果还没有安装,可以参考Docker官方文档进行安装。

2. 创建Dockerfile

Dockerfile是一个文本文件,包含了一系列指令,用于构建Docker镜像。我们将通过Dockerfile来构建一个包含Jenkins的镜像。

首先,创建一个新的目录,并在该目录下创建一个名为Dockerfile的文件:

mkdir jenkins-docker
cd jenkins-docker
touch Dockerfile

接下来,编辑Dockerfile文件,添加以下内容:

# 使用官方的Jenkins镜像作为基础镜像
FROM jenkins/jenkins:lts

# 设置环境变量
ENV JAVA_OPTS="-Djenkins.install.runSetupWizard=false"

# 安装必要的插件
RUN /usr/local/bin/install-plugins.sh git workflow-aggregator docker-workflow blueocean

# 切换到root用户
USER root

# 安装Docker客户端
RUN apt-get update && apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -

RUN add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/debian \
   $(lsb_release -cs) \
   stable"

RUN apt-get update && apt-get install -y docker-ce-cli

# 切换回Jenkins用户
USER jenkins

# 暴露Jenkins的默认端口
EXPOSE 8080

# 暴露Jenkins的默认JNLP端口
EXPOSE 50000

# 设置Jenkins的默认工作目录
VOLUME /var/jenkins_home

# 启动Jenkins
CMD ["jenkins.sh"]

2.1 解释Dockerfile

3. 构建Docker镜像

Dockerfile所在的目录下,运行以下命令来构建Docker镜像:

docker build -t my-jenkins .

该命令会根据Dockerfile中的指令构建一个名为my-jenkins的镜像。构建过程可能需要一些时间,具体取决于网络速度和系统性能。

4. 运行Jenkins容器

镜像构建完成后,可以使用以下命令来运行Jenkins容器:

docker run -d -p 8080:8080 -p 50000:50000 --name jenkins -v jenkins_home:/var/jenkins_home my-jenkins

4.1 解释命令

5. 访问Jenkins

容器启动后,可以通过浏览器访问Jenkins。打开浏览器,输入http://localhost:8080,你将看到Jenkins的登录页面。

由于我们在Dockerfile中设置了JAVA_OPTS环境变量,跳过了初始设置向导,因此你可以直接使用Jenkins。

6. 配置Jenkins

6.1 安装插件

虽然我们在Dockerfile中已经安装了一些常用插件,但你仍然可以根据需要安装其他插件。进入Jenkins的管理界面,点击“Manage Jenkins” -> “Manage Plugins”,然后选择“Available”选项卡,搜索并安装所需的插件。

6.2 配置Docker

由于我们在容器中安装了Docker客户端,你可以在Jenkins中配置Docker,以便在Pipeline中使用Docker命令。进入Jenkins的管理界面,点击“Manage Jenkins” -> “Configure System”,找到“Cloud”部分,配置Docker的相关设置。

7. 持久化数据

在运行Jenkins容器时,我们使用了-v jenkins_home:/var/jenkins_home选项,将Jenkins的数据目录挂载到主机的jenkins_home卷中。这样,即使容器被删除或重新创建,Jenkins的数据仍然会保留。

8. 停止和删除容器

如果你需要停止Jenkins容器,可以使用以下命令:

docker stop jenkins

如果需要删除容器,可以使用以下命令:

docker rm jenkins

9. 总结

通过本文的介绍,你已经学会了如何使用Docker构建Jenkins镜像并运行容器。Docker的轻量级和可移植性使得Jenkins的部署和管理变得更加简单和高效。希望本文对你有所帮助,祝你在CI/CD的旅程中取得成功!


参考文档:

推荐阅读:
  1. docker容器打成镜像并导出导入
  2. Jenkins在Kubernetes中构建Docker镜像并推送至Registry

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

docker jenkins

上一篇:TCP的状态有哪些

下一篇:LUA怎么实现串口数据采集与TCP单向透传

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》