DevOps搭建(十一)-Jenkins容器内部使用Docker详解

1、目的

配置的目的是使得Jenkins容器可以直接使用宿主机的Docker,从而可以直接使用Docker命令进行本地打包操作,然后推送到Harbor镜像仓库。

2、修改数据卷

如何在docker中执行宿主机的docker操作,我们管它叫docker in docker。

至于为什么要在docker中操作宿主机的docker,优点不言而喻,我们既可以将你的具体需求容器化部署,又不用直接在宿主机上安装(假设我们没有办法在docker中操作宿主机的docker,那么我们只能将这样的软件程序直接安装到宿主机上,这样显然是不利于管理和维护的)。

实现这种需求,其实非常简单,只需要将docker宿主机的docker文件和docker.sock文件挂载到容器中即可,具体为:

cd /usr/local/docker/jenkins_docker/
vi docker-compose.yml

数据卷追加以下配置:

- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker
- /etc/docker/daemon.json:/etc/docker/daemon.json

完整的配置如下:

version: "3.1"
services:
  jenkins:
    image: jenkins/jenkins:2.401.2-lts
    container_name: jenkins
    restart: always
    ports:
      - 8080:8080
      - 50000:50000
    #数据卷&#x

你可能感兴趣的:(devops,jenkins,docker,运维,自动化部署)