docker-compose部署Jenkins_docker compose配置jenkins

使用docker-compose部署Jenkins或多或少都会遇到这些问题,以下是使用docker-compose部署jenkins的过程中遇到的一些问题;

一、编写docker-compose.yml

version: '3'
services:
  jenkins:
    image: jenkins/jenkins
    container\_name: jenkins
    restart: always
    ports:  # 绑定端口
      - "10006:8080"
    volumes: # 挂载目录 本地文件夹目录:容器文件夹目录
      - ./data/:/var/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock
      - /usr/bin/docker:/usr/bin/docker
      - /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7

这里着重说明两个地方,一个是volumesenvironment,一个是本地映射到容器的配置项,一个是对容器的环境设置;
创建data文件夹sudo mkdir data, 同级目录;
修改文件夹权限sudo chmod 765 data
然后sudo docker-compose up -d, 一般情况直接就运行成功了,完结!撒花,在浏览器中打开一路点点点就好了,然后咱们继续往下看;

二、使用宿主机的docker环境

笔者这里的环境是ubuntu 22.04 server, 理论上linux都可以这样子操作,但或许有差异,请注意!

 ls /usr/bin -l | grep docker

在这里插入图片描述

这里是已经调整好的,正常安装的话应该是root:docker, 我的系统用户名是lhdht, 所以我调整成lhdht, 下面是修改用户的命令,注意修改成自己的用户名,执行完成之后再次使用ls /usr/bin -l | grep docker就是如上图一样docker, 被修改成<用户名>:docker

sudo chown lhdht:docker /usr/bin/docker

进入容器内的Jenkins

docker exec -it jenkins /bin/bash

在这里插入图片描述

这样就进入到容器内的jenkins了,此时docker version会输出完整的版本信息,如果是没有修改用户的话则会出现权限不足的问题!如下是正常的

在这里插入图片描述

三、修改jenkins的环境

这里着重说一下,修改环境变脸的方式有两种(ps:作者知道的就两种,如果有其他的,请评论补充);
docker-compose.ymlenvironment下直接新增既可,PATH=xxxxx

举个栗子:容器内的jenkins使用宿主机的go环境

  • 修改docker-compose.yml, 将宿主机的go sdk目录映射到容器内/usr/local/bin/go:/usr/local/bin/go
  • sudo docker-compose up -d
  • 然后在jenkins控制面板中添加环境变量
/opt/java/openjdk/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/env/go/bin

在这里插入图片描述

为什么要这样子添加环境变量,因为jenkins容器内本身就有PATH, 所以之所以这样是要继承jenkins的环境,理论上所有的环境都可以这样子设置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值