Docker 搭建 Jenkins 环境

本文详细介绍如何在Windows环境下通过VirtualBox和Vagrant搭建Ubuntu虚拟机,并在该虚拟机上利用Docker安装和配置Jenkins。文章涵盖从环境准备、拉取官方Docker镜像到启动Jenkins容器并获取初始密码的全过程。

安装Docker

参考docker的官网, 在不同的os下安装的步骤略有不同, 我这里是在windows下通过virtual box 在vagrant上拿了个ubuntu的box, 因此是在linux下搭建的, 具体步骤官网上有详细的说明.


Pull Docker Image

直接在docker hub上找jenkins官方的image, pull下来就可以, 具体的方式docker image下会有详细的介绍, 如果是国内网络比较慢的话, 建议挂到国内的镜像代理上, 关于docker的操作步骤网上有很多教程, 就不在赘述了.


启动jenkins

Docker run -d --net:host -p 8080:8080 --name jenkins jenkins/jenkins

进入container

Docker exec -it jenkins /bin/bash

获取Jenkins初始密码

cat <jenkins init path>

之后便可以通过外部访问jenkins host了, 这样hold起来的jenkins可以连接外网, 可以直接下载plugin了.


使用 Docker 搭建 Jenkins 可按以下步骤进行: ### 准备工作 确保已经安装好了 Docker。 ### 拉取 Jenkins 镜像 可使用以下命令查看 Jenkins 版本: ```bash docker search jenkins ``` 拉取最新长期支持版本(LTS)的 Jenkins 镜像: ```bash docker pull jenkins/jenkins:lts ``` ### 创建并配置 Jenkins 工作目录 创建 Jenkins 工作目录: ```bash mkdir /home/jenkins ``` 给该目录赋予权限: ```bash chown -R 1000:1000 /home/jenkins ``` ### 运行 Jenkins 容器 以下是几种不同的运行容器命令示例,可根据需求选择: #### 示例一 ```bash docker run -itd -p 9090:8080 -p 50000:50000 --name jenkins --privileged=true -v /home/jenkins:/var/jenkins_home jenkins/jenkins:lts ``` 参数解释: - `--privileged=true`:让容器有 root 权限,方便进入容器操作。 - `-p 9090:8080`:Jenkins 的 web 访问端口 9090。 - `-v /home/jenkins:/var/jenkins_home`:容器 `/var/jenkins_home` 路径映射到宿主机 `/home/jenkins` [^1]。 #### 示例二 ```bash docker run -dit --name=jenkins -p 8080:8080 -u=root -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker jenkins/jenkins:2.440.3-lts-jdk17 ``` [^2] #### 示例三 ```bash docker run -d -uroot -p 9095:8080 -p 50000:50000 --name jenkins -v /home/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins ``` 参数解释: - `-d`:后台运行容器,并返回容器 ID。 - `-uroot`:使用 root 身份进入容器,避免容器内执行某些命令时报权限错误。 - `-p 9095:8080`:将容器内 8080 端口映射至宿主机 9095 端口,此为访问 Jenkins 的端口。 - `-p 50000:50000`:将容器内 50000 端口映射至宿主机 50000 端口。 - `--name jenkins`:设置容器名称为 jenkins。 - `-v /home/jenkins_home:/var/jenkins_home`:`/var/jenkins_home` 目录为容器 Jenkins 工作目录,将硬盘上的一个目录挂载到这个位置,方便后续更新镜像后继续使用原来的工作目录。 - `-v /etc/localtime:/etc/localtime`:让容器使用和服务器同样的时间设置 [^3]。 ### 安装必要插件 Jenkins 启动成功之后,安装三个必要的插件: - `Maven Integration`:Maven 构建工具。 - `Publish Over SSH`:用于把 Jenkins 打包好的 jar 上传到应用服务器上。 - `Gitee`:协助使用 Gitee 仓库 [^4]。 ### Windows 环境特殊说明 Windows 下搭建比较复杂,因为 Docker 整个技术基于 Linux 容器,在 Windows 下安装会有兼容问题。不过 Docker 官方提供了 toolbox 工具,可直接下载 toolbox 进行傻瓜式安装,与普通软件安装无异 [^5]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值