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

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

bash 复制代码
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中服务配置如下
yaml 复制代码
 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 路径】

bash 复制代码
sudo chmod +x /usr/local/bin/docker-compose

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

bash 复制代码
sudo yum install docker-compose-plugin

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

相关推荐
badhope12 小时前
Spring AI Alibaba停更:Java程序员的信任,还能被辜负几次?
java·spring
const_qiu12 小时前
第一章 1.1-1.2:基础模型调用与 TypeScript 入门 —— Java 开发者的视角
java·javascript·typescript
Wang's Blog12 小时前
Java 项目实战: 交友项目 - Dubbo 负载均衡策略与实战验证
java·dubbo·交友
SL_staff12 小时前
销售知识库7天落地实践:面向业务侧的零代码嵌入方案
java·开源·产品
GreatSQL社区12 小时前
主从复制SQL线程中断——字符集砸出的坑
java·数据库·算法
郭老二13 小时前
【docker】docker compose使用,已nginx为例
nginx·docker·容器
Wang's Blog13 小时前
Java 项目实战: 交友项目 - 入门案例:服务提供者搭建总结
java·交友
hudd66813 小时前
JavaEE 初阶 - 多线程(进阶)
java·开发语言·java-ee
Pniubi13 小时前
区分Java创建线程池、多线程
java·线程·线程池·多线程·并发
程序员梅雨13 小时前
ZooKeeper面经总结
java·大数据·linux·分布式·后端·zookeeper·中间件