Jenkins内部使用Docker

修改docker.sock文件权限

路径在:/var/run/docker.sock

进入/var/run目录下

修改docker.sock文件权限,且让其他用户也可以读写。

复制代码
cd /var/run
chown root:root docker.sock 
chmod o+rw docker.sock 

修改数据卷映射

切换到你Jenkins的docker-compose.yml文件所在位置,直接通过修改命令修改也行。

复制代码
cd /usr/local/docker/jenkins_docker/

编辑docker-compose.yml

复制代码
vim docker-compose.yml

追加volumes配置,之前只映射了个data数据目录

现在追加3条映射,把宿主机的docker.sock、docker命令执行文件、daemon.json挂载。

复制代码
version: "3.1"
services:
  jenkins:
    image: jenkins/jenkins:2.401.3-lts
    restart: always
    container_name: jenkins
    ports:
      - 8080:8080
      - 50000:50000
    volumes:
      - ./data/:/var/jenkins_home/
      - /var/run/docker.sock:/var/run/docker.sock
      - /usr/bin/docker:/usr/bin/docker
      - /etc/docker/daemon.json:/etc/docker/daemon.json

重启Jenkins

重新启动容器组

复制代码
docker compose up -d

进入Jenkins容器,验证Docker是否可以使用

查看docker版本没问题,拉取和推送镜像也没问题(Jenkins容器里面的镜像其实是在宿主机上的)

复制代码
docker exec -it jenkins bash
docker version
docker pull 192.168.170.111:80/monster/chatgpt:0.1
docker push 192.168.170.111:80/monster/chatgpt:0.2
相关推荐
IvanCodes26 分钟前
一、Docker:一场颠覆应用部署与运维的容器革命
docker·容器
好名字更能让你们记住我27 分钟前
Linux多线程(十二)之【生产者消费者模型】
linux·运维·服务器·jvm·windows·centos
门思科技28 分钟前
设计可靠 LoRaWAN 设备时需要考虑的关键能力
运维·服务器·网络·嵌入式硬件·物联网
栗子~~41 分钟前
Milvus docker-compose 部署
docker·容器·milvus
学习编程的gas43 分钟前
Linux开发工具——gcc/g++
linux·运维·服务器
椰汁菠萝2 小时前
ubuntu下免sudo执行docker
ubuntu·docker·免sudo
dessler2 小时前
Kafka-消费者(Consumer)和消费者组(Consumer Group)
linux·运维·kafka
进击的程序汪2 小时前
Linux 启动过程流程图--ARM版
linux·运维·arm开发
紫璨月2 小时前
nginx反向代理的bug
运维·nginx·bug
没有名字的小羊2 小时前
2.安装Docker
运维·docker·容器