Docker Compose安装部署Jenkins

简介: Docker Compose安装部署Jenkins

1、前言


  1. 数据卷挂载到 /var 磁盘目录下,因为该磁盘空间较大,后面需要挂载容器数据卷,以防内存吃紧。


  1. 为了可以留存启动Jenkins服务的配置以及启停Jenkins方便,我采用 Docker Compose 部署(没有用到Compose的核心功能、没有关联容器,纯粹个人喜好😊,大佬们有更好的方式烦请指点一二,感谢😊)


先简单介绍一下 Docker Compose


2、Docker Compose


Docker Compose 是 Docker 官方编排(Orchestration)项目之一,负责快速在集群中部署分布式应用。


Dockerfile 可以让用户管理一个单独的应用容器;而 Compose 则允许用户在一个模板(YAML 格式)中定义一组相关联的应用容器(被称为一个 project,即项目),例如一个 Web 服务容器再加上后端的数据库服务容器等。


该项目由 Python 编写,实际上调用了 Docker 提供的 API 来实现。


首先介绍几个术语。


  • 服务(service):一个应用容器,实际上可以运行多个相同镜像的实例。


  • 项目(project):由一组关联的应用容器组成的一个完整业务单元。


可见,一个项目可以由多个服务(容器)关联而成,Compose 面向项目进行管理。

这里忘记说怎么安装使用 Docker Compose 了,所以补了一篇 Docker Compose之容器编排开发初探,快来看看吧😊


下面演示单机部署Jenkins


3、通过docker-compoes来部署容器


  1. 创建 docker_jenkins_compose 文件夹


  1. docker_jenkins_compose 目录下创建 docker-compose.yml 文件


  1. 编写docker-compose.yml
# docker-compose.yml
version: '3'
services:                                      # 集合
  docker_jenkins:
    user: root                                 # 为了避免一些权限问题 在这我使用了root
    restart: always                            # 重启方式
    image: jenkins/jenkins:lts                 # 指定服务所使用的镜像 在这里我选择了 LTS (长期支持)
    container_name: jenkins                    # 容器名称
    ports:                                     # 对外暴露的端口定义
      - 8082:8080                              # 访问Jenkins服务端口
      - 50000:50000
    volumes:                                   # 卷挂载路径
      - /var/vol_dockers/jenkins_home/:/var/jenkins_home  # 这是我们一开始创建的目录挂载到容器内的jenkins_home目录
      - /var/run/docker.sock:/var/run/docker.sock
      - /usr/bin/docker:/usr/bin/docker                # 这是为了我们可以在容器内使用docker命令
      - /usr/local/bin/docker-compose:/usr/local/bin/docker-compose


  1. 创建启停脚本文件: restart , start, stop, 并修改文件权限


  • 创建文件
# restart
docker-compose restart
# start
docker-compose up -d
# stop
docker-compose stop


  • 修改文件权限


chmod 777 restart start stop // 可读可写可执行


4、启动容器


./start


5、查看容器日志


  1. docker logs 'ContainerId'image.png

生成Jenkins登录初始密码,一会登录的时候要用


  1. docker logs -f jenkins 查看实时日志


查看Jenkins状态

ps -ef | grep jenkins


6、宿主机访问jenkins主目录


# 容器内/var/jenkins_home挂载目录
/var/vol_dockers/jenkins_home


7、登录Jenkins


浏览器打开 http://主机ip:8082, 端口就是yaml文件种配置的映射端口。

image.pngimage.pngimage.png


8、启动问题及处理


宿主机里访问 localhost:8082

curl localhost:8082
Authentication required


防火墙要开放 500008082 端口,同时也要配置阿里云安全组规则


本篇完,以后启停Jenkins服务可以直接执行上面配置的可执行文件即可,比较方便。后面接着开始创建jenkins用户,配置Jenkins。

目录
相关文章
|
25天前
|
人工智能 前端开发 Docker
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
在 AI 智能体开发中,开发者常面临本地调试与云端部署的矛盾。本文介绍如何通过 Docker Compose 与 Docker Offload 解决这一难题,实现从本地快速迭代到云端高效扩容的全流程。内容涵盖多服务协同、容器化配置、GPU 支持及实战案例,助你构建高效、一致的 AI 智能体开发环境。
212 1
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
|
2月前
|
运维 Devops 持续交付
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
在企业IT建设中,软件部署常面临效率低、易出错等问题。通过Docker与自动化工具,可实现高效、标准化和可追溯的部署流程,提升企业应用交付效率,降低运维门槛,助力中小企业实现自动化部署。
184 5
揭秘 Docker 自动部署神器 Websoft9:热门开源软件一键部署
|
1月前
|
JavaScript 算法 前端开发
【Docker项目实战】使用Docker部署paopao-ce微社区
【Docker项目实战】使用Docker部署paopao-ce微社区
226 84
【Docker项目实战】使用Docker部署paopao-ce微社区
|
2月前
|
运维 Cloud Native 开发者
Docker:现代化应用开发与部署的神器
Docker:现代化应用开发与部署的神器
191 101
|
2月前
|
设计模式 Linux 开发工具
Docker部署会吗?
本段内容主要介绍了Docker常用命令、Linux基础指令及日志查看方法,还涉及SpringMVC的执行流程、设计模式与注解,适合用于面试中技术能力的展示。
96 0
|
24天前
|
存储 Docker Python
docker 部署 sftp
本文介绍SFTP服务的部署与配置,包括users.conf用户配置规则、Docker容器运行命令及上传目录权限说明,重点解析atmoz/sftp镜像的chroot机制与子目录映射,确保用户登录后正确访问/upload目录,并提供Python脚本实现文件上传示例。
78 12
docker 部署 sftp
kde
|
4天前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
kde
137 6
|
25天前
|
运维 Linux 数据库
基于 Docker 部署 n8n 指南,新手一看就会
本教程详解如何通过 Docker 快速部署开源自动化工具 n8n,适合新手快速上手。内容涵盖官方部署步骤、常见难点及第三方一键部署方案,助你高效搭建自动化工作流平台。
435 6
kde
|
8天前
|
存储 搜索推荐 数据库
🚀 RAGFlow Docker 部署全流程教程
RAGFlow是开源的下一代RAG系统,融合向量数据库与大模型,支持全文检索、插件化引擎切换,适用于企业知识库、智能客服等场景。支持Docker一键部署,提供轻量与完整版本,助力高效搭建私有化AI问答平台。
kde
179 8
kde
|
7天前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
kde
109 3