首页 > 其他分享 >Docker构建Jenkins

Docker构建Jenkins

时间:2023-09-03 14:32:57浏览次数:43  
标签:容器 宿主机 jenkins 构建 usr Jenkins home Docker docker

  • 拉取jenkins的docker镜像,这里用的是lts的长期支持版本,你可以到jenkins官网自由选择其他版本(下载速度慢,花了两个小时,如果中途出现超时再次运行该命令即可)

docker pull jenkins/jenkins:lts

  • 配置宿主机映射到容器的目录,之后jenkins的一些配置文件都将会存储到该目录下,这个目录可以自己定,但是我建议遵守我这样的规范,便于日后查找和管理

mkdir /home/jenkins_home # 创建jenkins_home目录 chown -R 1000:1000 /home/jenkins_home #设置该目录的所有者和所属的组,普通用户默认uid为1000,gid为1000,chown应该是change own的简写,指改变文件夹权限,-R指遍及子目录

  • 启动jenkins的docker镜像

docker run -d --name jenkins -p 8080:8080 -p 50000:50000 -u root \ -v /home/jenkins_home:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker \ -v /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \ -v /opt:/opt \ -v /etc/timezone:/etc/timezone jenkins/jenkins:lts

  • 参数解释

-d 表示以后台模式运行

--name 为容器定义一个名字(后面可以代替容器id使用)

-p 表示映射容器的端口到宿主机的端口

-v 表示映射宿主机的目录到容器的目录

-u root 使用root用户运行,避免后面出现的一些执行权限问题

-v /home/jenkins_home:/var/jenkins_home 映射jenkins_home,将数据存储到宿主机,这样配置就不会随容器丢失

-v /var/run/docker.sock:/var/run/docker.sock 与 -v /usr/bin/docker:/usr/bin/docker 把宿主机docker 映射到容器内,可以直接在容器内使用宿主机docker

-v /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \ 容器内docker运行需要的库文件

-v /opt:/opt \ 自主安装的一些运行时软件(如java/maven/git...)

-v /etc/timezone:/etc/timezone 映射时区文件,保证容器的时区和宿主机相同(官网的jenkins容器时区不是中国的时区)

最后的jenkins/jenkins:lts是要启动的镜像

  • 容器启动后,就可以访问ip:8080看到jenkins首次运行的首页了,然后通过下面命令查看初始密码,填入之后跳转到安装插件的页面,选择第一个就好,会默认安装一些插件

cat /home/jenkins_home/secrets/initialAdminPassword

【如果不能访问,重启jenkins容器试试】

docker restart jenkins

  • 推荐插件安装

  • 多次重新刷新页面,出现安装插件失败

  • 先点击继续,跳过插件的安装->创建管理员账户

docker restart jenkins #重启jenkins

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

还是下载速度慢!

下面不使用docker安装,直接在虚拟机上进行安装

标签:容器,宿主机,jenkins,构建,usr,Jenkins,home,Docker,docker
From: https://blog.51cto.com/chengzheng183/7340370

相关文章

  • Linux--安装部署Docker
    Docker介绍Docker理解Docker是基于Go语言实现的开源容器项目,专业的叫法是应用容器一次封装、到处运行对应用封装、分发、部署、运行的生命周期进行管理应用组件:Web应用、数据库平台、操作系统、集群为应用的开发、运行和部署提供一站式的使用解决方案Docker优势Docker容器好比一......
  • sonarqube教程:docker-compose安装sonarqube及sonar-scanner插件的使用
    docker-compose安装sonarqubevim/etc/sysctl.conf vm.max_map_count=262144vm.max_map_count参数含义version:'3'services:postgres:image:postgres:14.5restart:alwayscontainer_name:postgresports:-5432:5432volumes:......
  • docker下安装clickhouse
    文章目录01前言02安装03修改配置3.1安装vim插件3.2修改用户密码04验证01前言clickhousedockerhub首页:https://hub.docker.com/r/yandex/clickhouse-server,这里描述了clickhouse在docker下的简介以及部署方式:搜索自己需要的版本:https://hub.docker.com/r/yandex/clickhou......
  • 在Docker下一键安装部署免费开源的问答社区!
    在Docker下一键安装部署免费开源的问答社区! 1.准备一台VPS主机,没有的话,【搞一台】 2.一键安装部署Dockerwgethttps://raw.githubusercontent.com/QUANTAXIS/QUANTAXIS/master/config/install_docker.shsudobashinstall_docker.sh全选代码复制3.一键安装Answ......
  • docker 安装rabbitmq
    dockerpullrabbitmqdockerrun-d--hostnamemyrabbitmq--namerabbitmq-p15672:15672-p5672:5672rabbitmqdockerexec-itrabbitmq/bin/bashrabbitmq-pluginsenablerabbitmq_management可以通过访问http://localhost-ip:15672,访问web界面,这里的用户名和密......
  • ubuntu 虚拟机安装docker
    1. downloadimages:https://releases.ubuntu.com/22.04/       加速:https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/22.04/2.installvmware3.vmware选择安装这个镜像。这个镜像安装完之后,没有docker4.用熟悉的编辑器打开: /etc/apt/sources.list ......
  • docker中两个容器使用同一个IP的方法
    如果你希望允许两个容器使用相同的IP地址,可以使用Macvlan网络驱动程序。Macvlan网络驱动程序允许容器共享主机网络接口的MAC地址,从而允许多个容器使用相同的IP地址。以下是使用Macvlan网络驱动程序实现两个容器共享相同IP地址的步骤:1.创建一个Macvlan网络,指定父接口和IP地址范......
  • docker 使用Nginx反向代理配置
    dockerexec-itnginxbash#进入nginx容器容器里面需要安装Vimapt-getupdate#这个命令的作用是:同步/etc/apt/sources.list和/etc/apt/sources.list.d中列出的源的索引,这样才能获取到最新的软件包。apt-getinstall-yvim查看Nginx配置文件cdetc/nginx......
  • jenkins集成
    1.jenkins【注:Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行<持续集成>】2.使用的Jenkins的好处开发人员---代码提交到git远程仓库后,需要拉取--编译--打包--部署。每次提交到git仓库......
  • docker-compose教程:部署MySQL完整步骤
    目录结构root@localhostmysql#tree.├──conf│└──my.cnf├──db├──docker-compose.yml└──init└──init.sqldocker-compose.ymlversion:'2'services:mysql:#network_mode:"host" #将直接使用主机端口environment:......