• Docker Compose安装部署Jenkins


    流水线可以让项目发布流程更加清晰,docker可以大大减少Jenkins配置。

    1、前言

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

    2. 为了可以留存启动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 面向项目进行管理。

    下面演示单机部署Jenkins

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

    1. 创建 docker_jenkins_compose 文件夹

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

    3. 编写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'

    生成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

    8、启动问题及处理

    宿主机里访问 localhost:8082

    curl localhost:8082
    Authentication required
    

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

    👉 防火墙相关的可以参考掘金文章

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


    🎈🎈🎈

    🌹 持续更文,关注我,你会发现一个踏实努力的宝藏前端😊,让我们一起学习,共同成长吧。

    🎉 喜欢的小伙伴记得点赞关注收藏哟,回看不迷路 😉

    🎁 欢迎大家评论交流, 蟹蟹😊


    __EOF__

  • 本文作者: 甜点cc
  • 本文链接: https://www.cnblogs.com/all-smile/p/16558184.html
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    轻松完成Figma导入Sketch的在线方法
    【R语言基础操作】
    A Frustratingly Easy Approach for Entity and Relation Extraction 论文阅读
    2022-2028全球及中国特殊黄铜棒行业研究及十四五规划分析报告
    【Node.js】npm与包【万字教学~超超超详细】
    Packet Tracer模拟一次简单的HTTP请求
    GIS前端编程-Leaflet插件扩展
    applicationContext.xml
    【Stable Diffusion】入门-04:不同模型分类+代表作品+常用下载网站+使用技巧
    Spring MVC(一)【什么是Spring MVC】
  • 原文地址:https://www.cnblogs.com/all-smile/p/16558184.html