当前位置: 首页 > 知识库问答 >
问题:

sudo:docker compose:未找到命令

东方建修
2023-03-14

我正在尝试使用sudo运行docker compose。

我在Ubuntu 16.01上安装了docker和docker compose。

由于尝试使用curl下载compose时出错,我最终使用pip安装了它。

Docker版本1.12.0,内部版本8eab29e Docker compose版本1.8.0,内部版本94f7016

然而,当我尝试使用sudo运行docker-compose时,我得到了以下结果(将sudo与docker一起使用很好)

sudo: docker-compose: command not found

我想对“已安装”的含义有不同的定义。我一直在同一台声称未安装docker compose的计算机上使用它。

$ dpkg -s docker-compose
dpkg-query: package 'docker-compose' is not installed and no information is available
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.


$ whereis docker-compose
docker-compose: /home/user/.local/bin/docker-compose

$ pip show --files docker-compose
---
Metadata-Version: 2.0
Name: docker-compose
Version: 1.8.0
Summary: Multi-container orchestration for Docker
Home-page: https://www.docker.com/
Author: Docker, Inc.
Author-email: UNKNOWN
Installer: pip
License: Apache License 2.0
Location: /home/anton/.local/lib/python2.7/site-packages
Requires: six, jsonschema, enum34, cached-property, websocket-client, docker-py, requests, docopt, dockerpty, PyYAML, texttable
Classifiers:
  Development Status :: 5 - Production/Stable
  Environment :: Console
  Intended Audience :: Developers
  License :: OSI Approved :: Apache Software License
  Programming Language :: Python :: 2
  Programming Language :: Python :: 2.7
  Programming Language :: Python :: 3
  Programming Language :: Python :: 3.4
Files:
  ../../../bin/docker-compose
  compose/GITSHA
  compose/__init__.py
  compose/__init__.pyc
  compose/__main__.py
  compose/__main__.pyc
  compose/bundle.py
  compose/bundle.pyc
  compose/cli/__init__.py
  compose/cli/__init__.pyc
  compose/cli/colors.py
  compose/cli/colors.pyc
  compose/cli/command.py
  compose/cli/command.pyc
  compose/cli/docker_client.py
  compose/cli/docker_client.pyc
  compose/cli/docopt_command.py
  compose/cli/docopt_command.pyc
  compose/cli/errors.py
  compose/cli/errors.pyc
  compose/cli/formatter.py
  compose/cli/formatter.pyc
  compose/cli/log_printer.py
  compose/cli/log_printer.pyc
  compose/cli/main.py
  compose/cli/main.pyc
  compose/cli/signals.py
  compose/cli/signals.pyc
  compose/cli/utils.py
  compose/cli/utils.pyc
  compose/cli/verbose_proxy.py
  compose/cli/verbose_proxy.pyc
  compose/config/__init__.py
  compose/config/__init__.pyc
  compose/config/config.py
  compose/config/config.pyc
  compose/config/config_schema_v1.json
  compose/config/config_schema_v2.0.json
  compose/config/environment.py
  compose/config/environment.pyc
  compose/config/errors.py
  compose/config/errors.pyc
  compose/config/interpolation.py
  compose/config/interpolation.pyc
  compose/config/serialize.py
  compose/config/serialize.pyc
  compose/config/sort_services.py
  compose/config/sort_services.pyc
  compose/config/types.py
  compose/config/types.pyc
  compose/config/validation.py
  compose/config/validation.pyc
  compose/const.py
  compose/const.pyc
  compose/container.py
  compose/container.pyc
  compose/errors.py
  compose/errors.pyc
  compose/network.py
  compose/network.pyc
  compose/parallel.py
  compose/parallel.pyc
  compose/progress_stream.py
  compose/progress_stream.pyc
  compose/project.py
  compose/project.pyc
  compose/service.py
  compose/service.pyc
  compose/state.py
  compose/state.pyc
  compose/utils.py
  compose/utils.pyc
  compose/volume.py
  compose/volume.pyc
  docker_compose-1.8.0.dist-info/DESCRIPTION.rst
  docker_compose-1.8.0.dist-info/INSTALLER
  docker_compose-1.8.0.dist-info/METADATA
  docker_compose-1.8.0.dist-info/RECORD
  docker_compose-1.8.0.dist-info/WHEEL
  docker_compose-1.8.0.dist-info/entry_points.txt
  docker_compose-1.8.0.dist-info/metadata.json
  docker_compose-1.8.0.dist-info/pbr.json
  docker_compose-1.8.0.dist-info/top_level.txt
Entry-points:
  [console_scripts]
  docker-compose=compose.cli.main:main

我尝试了以下操作,但仍然出现相同的错误:

$ chmod +x /home/username/.local/bin/docker-compose
$ chmod +x /home/username/.local/lib/python2.7/site-packages

共有3个答案

阴阳
2023-03-14

如果您尝试通过docker compose v1官方页面进行安装,则需要使用curl下载二进制文件:

sudo curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

然后不要忘记向二进制文件添加可执行标志:

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

如果docker-compose使用python-pip安装

sudo apt-get -y install python-pip
sudo pip install docker-compose

尝试使用pip show--files docker compose查看安装位置。

如果docker-compose安装在用户路径中,请尝试:

sudo "PATH=$PATH" docker-compose

正如我从你更新的帖子中看到的,docker compose安装在用户路径中。本地/bin,如果此路径不在本地路径$path中,请尝试:

sudo "PATH=$PATH:/home/user/.local/bin" docker-compose
全彬
2023-03-14

dpkg-s的输出 表明docker compose不是从软件包安装的。如果您没有更多信息,至少有两种可能性:

>

  • docker compose根本没有安装,您需要安装它。

    这里的解决方案很简单:安装docker-compose

    docker compose安装在您的$主页目录中(或不在root的$路径上的其他位置)。

    在这种情况下,有几种解决方案。最简单的可能是更换:

    sudo docker-compose ...
    

    使用:

    sudo `which docker-compose` ...
    

    这将调用sudo,其中包含docker-compose的完整路径。

    您也可以将docker compose安装到系统范围的目录中,例如usr/local/bin。

  • 柳钟展
    2023-03-14

    在Ubuntu 16.04上

    我是这样解决这个问题的:参考Docker Compose文档

    >

  • sudo curl-Lhttps://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname-s)-(uname-m)-o/usr/local/bin/docker组合

    sudo chmod x/usr/local/bin/docker组合

    执行curl命令后,它会将docker compose放入

    /usr/本地/bin

    它不在路径上。要修复此问题,请创建符号链接:

    现在,如果您这样做:docker-compose--version

    您将看到docker compose现在位于路径上

  •  类似资料:
    • 我是新的Python开发和尝试使用pipenv。我运行命令,它成功运行: 然而,当我在一个新的根项目目录中运行命令时,我收到以下消息:。我怀疑我可能需要修改我的. bashrc,但是我不清楚要向文件中添加什么,或者是否需要修改。

    • 我在Heroku上使用Postgresql数据库托管了一个RoR应用程序,并且一直在使用PG备份工具将数据库从我的应用程序备份到本地机器上。由于该应用程序仍在开发中,它从编程的角度帮助我降低了我的同事对数据库所做的更改。几个月来,我一直在成功地使用PG备份进行捕获和恢复,但最近,当我运行此处所示的典型命令时: 在curl命令执行后,我遇到此错误: 你知道为什么会这样吗?显然,问题是我无法恢复下载的

    • 我使用的是节点0.10。35和grunt指挥部运作良好。现在升级到0.12之后。3 grunt命令已停止工作。 OS:Mac OSX 10.10.1节点:0.12.3 npm:2.9.1 grunt:0.4.5 我认为可能有问题的节点安装所以我清理安装了3-4次 我试着用- node-v0.12.3.pkg 节点版本管理器(nvm) 许多此类问题的解决方案建议使用 然后使用安装本地节点模块。 我遵

    • 我试着做一个文件: 但是得到了错误: Android:命令未找到 我试图设置Android SDK的路径,但没有帮助: 有没有可能解决这个问题? UPD:我正在使用这个软件中的Git Shell:http://git-scm.com/download/win

    • 我正在学习laravel并遵循这个教程, 但当我尝试安装npm时,它说

    • 我的discord bot能够运行其on_消息代码,但当我尝试运行命令%ping时,它会出错并显示“discord.ext.commands.errors.CommandNotFound:未找到命令”ping“。 我已经导入了所有需要的模块,在底部写了client.run(令牌),并定义了我的令牌和客户端对象,我认为没有必要包含这些代码行。 我已经包括等待client.process_comman

    • 我重新安装了Ubuntu,在安装了Yi2等之后,我似乎无法再运行codecept了。 我用的是Yii2。我需要composer.json中最新的codecept版本,该版本运行良好。但我似乎找不到让codeception再次运行的方法。 我已经浏览了所有的指南,但没有一个指南有任何其他的东西,只是为了满足composer的要求或将其添加到composer.json中。我确实注意到,当我想将code

    • 我正在尝试将我新培训的mobilenet模型转换为tflite,以便通过遵循Google codelabs将其用于Android应用程序。https://codelabs.developers.google.com/codelabs/tensorflow-for-poets-2-tflite/index.html#3 我在Ubuntu 16.04 LTS机器上。上面说是 未找到命令toco 谷歌告