记一次使用docker部署jenkins后,使用jenkins部署项目时提示 docker-compose: not found 的异常

在使用docker部署jenkins后,然后使用jenkins构建自由风格项目,执行shell命令时,使用到docker-compose命令时,提示以下异常:

Started by user admin
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/fishery-auth
[fishery-auth] $ /bin/sh -xe /tmp/jenkins1267025272683878744.sh
+ docker-compose -v
/tmp/jenkins1267025272683878744.sh: 2: docker-compose: not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE

前置说明

1、首先 jenkins部署的docker-compose.yml中服务配置如下
 jenkins:
          user: root                                 # 为了避免一些权限问题 在这我使用了root
          restart: always                            # 重启方式
          image: jenkins/jenkins:2.346.3-lts-jdk8    # 指定服务所使用的镜像,指定jdk版本
          container_name: jenkins                    # 容器名称
          environment:
            JAVA_OPTS: "-server -Xms512m -Xmx1024m"
          ports: # 对外暴露的端口定义
            - 8082:8080                              # 访问Jenkins服务端口
            - 50000:50000
          volumes: # 卷挂载路径
            - /data/docker/jenkins:/var/jenkins_home  # 这是我们一开始创建的目录挂载到容器内的jenkins_home目录
            - /var/run/docker.sock:/var/run/docker.sock          # 这是为了我们可以在容器内使用docker命令
            - /usr/bin/docker:/usr/bin/docker                    # 这是为了我们可以在容器内使用docker命令
            - /usr/bin/docker-compose:/usr/bin/docker-compose    # 这是为了我们可以在容器内使用docker-compose命令
2、jenkins启动后,部署服务,ruoyi-cloud-plus框架的服务,然后提示了开始的异常

解决办法:

1、权限排查 给docker-compose命令配上合适的权限 【注意看自己的docker-compose命令的路径,有些人会装在/usr/bin/docker-compose 路径】

sudo chmod +x /usr/local/bin/docker-compose

2、排查一下 看是否安装了 docker-compose-plugin 插件,如果没有 执行下面命令,安装即可

sudo yum install docker-compose-plugin

通过上面两步排查处理即可解决

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。使用 Docker Compose 部署 Jenkins 可以简化 Jenkins 的安装和配置过程,提高部署效率和可维护性。 以下是部署 JenkinsDocker Compose 文件示例: ``` version: '3' services: jenkins: image: jenkins/jenkins:lts ports: - "808:808" - "50000:50000" volumes: - jenkins_home:/var/jenkins_home environment: - JAVA_OPTS=-Djenkins.install.runSetupWizard=false networks: - jenkins_network volumes: jenkins_home: networks: jenkins_network: ``` 在该示例中,我们定义了一个名为 `jenkins` 的服务,使用Jenkins 官方提供的 `jenkins/jenkins:lts` 镜像。我们将 Jenkins 的 808 和 50000 端口映射到主机的同名端口,以便我们可以通过浏览器访问 Jenkins。我们还将 Jenkins 的数据目录 `/var/jenkins_home` 挂载到了 Docker 卷 `jenkins_home` 中,以便我们可以在容器重启后保留 Jenkins 的配置和数据。我们还设置了一个环境变量 `JAVA_OPTS=-Djenkins.install.runSetupWizard=false`,以禁用 Jenkins 的安装向导。最后,我们将 Jenkins 容器连接到一个名为 `jenkins_network` 的 Docker 网络中。 要部署 Jenkins,只需在包含上述 Docker Compose 文件的目录中运行以下命令: ``` docker-compose up -d ``` 该命令将启动 Jenkins 容器,并将其连接到 `jenkins_network` 网络中。我们可以通过浏览器访问 `http://localhost:808` 来访问 Jenkins。在第一次访问,我们需要输入初始管理员密码,该密码可以在容器日志中找到。输入密码后,我们可以按照向导完成 Jenkins 的配置。 希望这个回答对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿松哥哥2018

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值