Docker容器中安装jenkins

本文详细介绍了如何在Docker容器中安装JDK、MySQL以及Maven,包括解决冲突、启动容器和验证安装。同时,也讲解了在Linux环境下通过Docker安装Jenkins的过程,包括获取Jenkins密钥、配置Jenkins以及安装必要的插件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Docker容器中安装JDK

(1)在命令行方式下切换到root用户

su root

(2)拉取JDK镜像进行安装 

docker pull primetoninc/jdk:1.8

(3)查看JDK是否已成功安装

docker images

(4)启动JDK容器,并检查JDK是否正确安装 

docker run -it --name jdk1.8 -d primetoninc/jdk:1.8
Bug:
问题由来:
docker: Error response from daemon: Conflict. The container name "/jdk1.8" is already in use by container "1df77077ba885287e200bd0818076498fed8e044d200decbae8e14fe6073105e". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'.

 解决:

docker rm -f $(docker ps -a -q)

docker run -it --name jdk1.8 -d primetoninc/jdk:1.8

(3)查看JDK是否已成功安装

docker exec -it jdk1.8 /bin/bash
 java -version
 exit

在Docker容器下安装MySQL 

 (1)查看MySQL版本

docker search mysql

(2)选择其中一个版本安装 

docker pull ubuntu/mysql

 我选的是ubuntu/mysql

(3)启动MySQL

docker run -it --name mysql -d ubuntu/mysql

在Docker容器中安装Maven 

安装 Git 工具

在物理机上安装 Git,可通过以下两种方式安装:

1. 官网下载安装文件进行安装,官网地址: https://git-scm.com/download/win
2. 任课教师 ftp 目录下载安装文件进行安装。
安装 Git 教程: https://blog.youkuaiyun.com/mukes/article/details/115693833
Git 使用教程: https://www.liaoxuefeng.com/wiki/896043488029600

GitEE 创建仓库

1. 登录 GitEE, 如未有帐号,先注册帐号,注册完登录 GitEE 。记住用户名和邮箱。
2. 创建仓库。

 使用 Git 工具将本地项目代码推送到远程仓库(GieEE

共有四种方式将本地项目代码推送到远程仓库。
  • 方式一:使用 Git Bash 推送
  • 方式二:使用 Git Command 推送
  • 方式三:使用 Git GUI 推送
  • 方式四:使用 Idea 集成 Git 工具推送
具体使用哪种方式看使用习惯。下面以 Git Bash 方式演示代码推送。
1. 进入本地项目所在目录,右键项目,选择 Git Bash Here

 打开 Git Bash 命令行,输入:git init 命令。

进入项目目录,找到 .git 隐藏目录,进入该目录,打开 config 文件,并修改 config 文件内容如下:

 修改 config 文件内容:

修改完成后,回到 Git Bash 命令行,输入: git remote add origin 远程仓库地址,其中远程仓库地址为 Gitee 仓库地址。如下图所示:

 

接下来将当前目录所有文件添加到暂存区,在 Git Bash 命令行输入:
git add .

如下图所示:

将代码提交,输入命令: git commit -m ‘ 备注信息
推送代码,输入命令: git push origin master
推送完成后,登录 GitEE 查看代码是否成功推送。

 出错!

 是因为本地仓库和远程仓库的文件不一致所致,也就是说,github 允许你本地仓库有的东西,远程仓库里没有,但不允许远程仓库有的东西,你本地仓库没有。问题找到了,解决办法就很简单了,那就是在 push 之前先同步一下本地仓库与远程仓库的文件。使用以下命令

git pull --rebase origin master

成功会会有如下:

 接着在运行:

git push origin master

成功!

 

 Linux 环境下安装 Jenkins

1.Linux 环境下通过 Dorcker 容器安装 Jenkins

搜索 Jenkins 镜像: docker search jenkins

拉取 Jenkins 镜像:docker pull jenkins/jenkins

 运 行 Jenkins 容 器 :

docker run -itd -p 8081:8080 -p 50000:50000 -v /var/jenkins_mount:/var/jenins_home --name myjenkins jenkins/jenkins

 查看已启动容器:docker ps

容器启动后,即可访问 Jenkins 服务器。 

 查看 Jenkins 密钥:docker logs myjenkins(第一次登录 Jenkins 服务器需要输

入密钥)秘钥会变

 2.安装 Jenkins

打开浏览器(虚拟机里面的),输入 Jenkins 访问地址 :http://127.0.0.1:8081 ,如下图所示:

初次运行,要求输入 Jenkins 密钥,输入完成后,进入 Jenkins 主页。

3、配置 Jenkins

初次可以选择推荐的

等待安装

注册用户:

 如下访问Jenkins成功啦

Jenkins 配置内容包括:用户管理、系统配置、全局工具配置、插件管理, 具体如下图所示。

上图中数字表示配置顺序。
  1. 用户管理:添加一个用户,记住用户名和密码,添加完成后用新用户登录。
  2. 插件管理:只需要安装 Publish over SSH 和 Deploy to container Plugin 这两个 插件。
  3. 全局工具配置:需要配置 JDKLinux 系统中先要安装 JDK,如果没有安装, 可直接在配置界面安装)、Maven(Linux系统中提前安装Maven,并配置好Maven)、 配置 git
  4.  Configure System (系统设置):主要配置应用服务器地址及凭证,暂可不配 置

1、用户管理:

2、插件管理:

 

 3、全局工具配置:

上面已经装了JDK、git,现在来装Maven

 因为Jenkins容器没有Maven环境,如在容器内部安装Maven,由于构建的项目要下载相关的依赖这样造成一部分资源浪费。所以我这里采用的将Maven和容器通过挂载达到共享本地Maven仓库

  • 去官网下载Maven,我使用的版本是3.5.0
  • 上传至Docker服务所在的服务器
  • 我这里放到的 /usr/local/目录下了

因为ubuntu上传外面的文件要借助连接文件(这里我用xshell)

 sudo apt-get install openssh-server

报错:

 解决:

sudo rm /var/lib/dpkg/lock-frontend
sudo apt-get install openssh-server

还是报错:

 解决:!

sudo rm /var/lib/dpkg/lock
sudo apt-get install openssh-server

 参考:使用Xshell连接Ubuntu_九耶(钛伦特)的博客-优快云博客

在xshell上传文件

1、安装rz命令

输入rz命令,看是否已经安装了lrzsz

如果没有安装则执行下方命令进行安装 

apt install lrzsz

2、解压maven压缩包

tar zxvf apache-maven-3.9.1-bin.tar.gz 

3、解压后进入apache-maven-3.9.1

4、创建repository目录mkdir repository

5、进入conf目录 vim settings.xml 配置本地仓库路径(换成自己的路径和版本)和阿里镜像源

<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <!--这里写自己的路径-->
  <localRepository>/usr/local/apache-maven-3.9.1/repository</localRepository>

  <pluginGroups>
  </pluginGroups>
  
  <proxies>
  </proxies>

  <servers>
  </servers>

  <mirrors>
		<mirror>
  		<id>aliyunmaven</id>
  		<mirrorOf>*</mirrorOf>
  		<name>阿里云公共仓库</name>
  		<url>https://maven.aliyun.com/repository/public</url>
		</mirror>
  </mirrors>
<profiles>  
 </profiles>

</settings>

6、回到/usr/local/给apache-maven-3.5.0文件递归增加其他用户写权限

chmod -R o+w apache-maven-3.9.1
ll |grep apache-maven-3.9.1

7、查看apache-maven-3.5.0/bin/目录下的mvn是否有执行权限(绿色的),没有就添加

ll apache-maven-3.9.1/bin/mvn

 8、添加Maven环境变量

vim /etc/profile

 将如下配置到/etc/profile,注意是你的Maven目录的位置

export MAVEN_HOME=/usr/local/apache-maven-3.9.1
export PATH=$PATH:$MAVEN_HOME/bin

配置生效:

 source /etc/profile

10、配置成功后关闭终端,从新连接

在任意目录输入mvn -version 没有提示mvn 命令找不到说明配置完成

如果提示找不到java 命令,只是说明你没有安装java环境。根据你自己的需要是否安装,这里可以不安(jenkins容器里有openjdk环境)

 提示我没有装maven,根据命令安装

apt install maven

启动Jenkins容器

  • 选择一个目录(我选择的是 /home目录)
  • 在该目录下创建目录mkdir jenkins
  • 进入目录,创建data目录 用于挂载Jenkins的数据文件
  • 为其他用户添加写的权限chmod o+w data

 

直接使用admin用户

之后保存并完成,然后重启(如果你觉得重启慢的话,去终端另开一个端口,用docker restart 容器id 重启容器)。重启好了页面要刷新一下,不然一直等待页面

全局安装配置

全局工具配置

 通过

docker exec -it 容器id /bin/bash

进入容器(以下参数全是容器中的参数)

获取Maven的settings文件路径

 创建项目并配置自动化构建和自动化部署

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值