Dockerはインストールされていますが、Docker Composeはインストールされていませんか?どうして?


127

次のコマンドを実行して、centos 7にdockerをインストールしました。

curl -sSL https://get.docker.com/ | sh
systemctl enable docker && systemctl start docker
docker run hello-world

注:helloworldは正しく実行され、問題はありません。

ただし、docker-compose(docker-compose.ymlが存在し、有効である)を実行しようとすると、Centosでのみエラーが発生します(docker-composeファイルではWindowsバージョンが正常に機能します)。

/usr/local/bin/docker-compose: line 1: {error:Not Found}: command not found

5
おかしなことに、WindowsとMacではすべてが読み込まれて利用可能ですが、Linuxユーザーは、入力とインストールを個別に行い、結果を理解する必要があります(もちろん楽しい)
killjoy

回答:


277

Docker Composeもインストールする必要があります。マニュアルを参照してください。実行する必要があるコマンドは次のとおりです

sudo curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m)"  -o /usr/local/bin/docker-compose
sudo mv /usr/local/bin/docker-compose /usr/bin/docker-compose
sudo chmod +x /usr/bin/docker-compose

4
二行目を実行しているとき、私は応答を受け取る:mv: rename ./docker-compose to /usr/bin/docker-compose: Operation not permitted
kuanb

4
@kuanb許可が許可されていないと表示されている場合は、完全なsudo権限を取得していることを確認してください
killstreet

現在、バージョン1.7.0は古いです。docs.docker.com/compose/installによると、新しいバージョンは1.11.2です。これは、その代わりにカール-L意味github.com/docker/compose/releases/download/1.7.0/...uname -s - uname -m> ./docker-composeを使用しなければならないカール-L github.com/docker/compose/releases/download/ 1.11.2 /…uname -s - uname -m> ./docker-compose
Yuriy Zaletskyy 2017年

1
GitHubリリースを指すリンクが古くないことを確認してください!GitHubで最新リリースを確認してください。ブラウザから最新のファイルをダウンロードして、移動して実行権限を与えることもできます。
totymedli 2017年

1
私はまだdockerについて学習していますが、すべての機能がメインのdocker-cli docker stackとdocker swarmに統合されているため、docker-composeを新規インストールに使用しないでください。vsupalov.com/difference-docker-compose-and-docker-stack。ドッキングウィンドウ-コンを探しているとき、それはGoogleで最初に表示されるかもしれない、この答えは、それを言及する必要があります
Eloims

40

Raspbian 8を使用してRaspberry Pi 3にインストールしていline 1: Not: command not foundますdocker-compose --version。curl メソッドが失敗し(を要求するとエラーが表示されました)、@ sunapi386のソリューションは少し古くなっているように見えたので、これを試してみました:

まず、以前の取り組みから物事を整理します。

sudo rm /usr/local/bin/docker-compose
sudo pip uninstall docker-compose

次に、Rpiのdocker-composeに関するこのガイダンスに従います。

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

私(2017年11月1日)の場合、これにより次の応答が返されdocker-compose --versionます。

docker-compose version 1.16.1, build 6d1ac219

6
あなたの解決策は完璧に機能します!最新バージョンのdocker-composeが必要ない場合は、も使用できますapt-get install docker-compose。もちろん、これにはDockerリポジトリをaptのsources.listに追加する必要があります(get.docker.comのインストールスクリプトがこれを自動的に実行します)。ただし、Raspian Stretch Liteを搭載した私のRaspberry Pi 3では、これは非常に古いバージョンになりますdocker-compose version 1.8.0, build unknown。このバージョンは非常に古いため、docker-composeファイル形式のバージョン2のみをサポートしています。
ロバート

これは、awsでdocker-compsエラーが発生するのを助けました。ありがとう
Laser Hawk

1
私はいくつかの問題を抱えて、 'apt purge'と 'pip uninstall'をdocker-composeに使用してから再インストールしました(一方または両方かどうかは不明です)が、ソリューションの重要な部分は次のとおりです:pip install --upgrade docker-py
mirek 2018年

パーフェクト!curl、chmod、バージョンチェックなし。最後のバージョンを自動インストールするだけです。答えとして受け入れられるべきです。
Cherry

pipを使用してdocker-composeをインストールするときに大量のエラーが発生しました。もしそうなら、この答えを試してください。stackoverflow.com
Vik

10

Raspbian OSのRaspberry Pi 3にインストールしています。curlこの方法は、有効な応答に解決されませんでした。また{error: Not Found}、URL https://github.com/docker/compose/releases/download/1.11.2/docker-compose-Linux-armv7lを確認したところ、有効ではありませんでした。ビルドはなかったと思います。

このガイドhttps://github.com/hypriot/arm-composeが役に立ちました。

sudo apt-get update
sudo apt-get install -y apt-transport-https
echo "deb https://packagecloud.io/Hypriot/Schatzkiste/debian/ jessie main" | sudo tee /etc/apt/sources.list.d/hypriot.list
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 37BBEE3F7AD95B3F
sudo apt-get update
sudo apt-get install docker-compose

9

次のように、公式リポジトリをリポジトリリストに追加してdockerインストールした場合:

curl -L https://nightly.odoo.com/odoo.key | apt-key add -
sudo echo "deb http://nightly.odoo.com/10.0/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list
sudo apt-get update && sudo apt-get install odoo

ただやる:

$ sudo apt-get install docker-compose

RHELベースのディストリビューション/ Fedoraの場合:

$ sudo dnf install docker-compose

1
Apt get-docker CEに指定するリポジトリを追加した後でも、バージョン2のdocker-compose最大docker-compose.ymlファイルと互換性のある1.8 のみが含まれているようです。つまり、デフォルトのリポジトリまたは独自のapt-に公開さdocker-composeれなくなりました。apt-getリポジトリを取得します。新しいバージョンを入手するには、を使用する必要があるようですpip。これは文字通り私がpipを使用している唯一のことなので、私を困らせます。
Groostav 2018年

5

まず、docker-composeがインストールされているかどうかを確認してください。

$ docker-compose -v

インストールされていない場合は、インストールガイドhttps://docs.docker.com/compose/install/を参照してください。 インストールされている場合は、バイナリの実行権限を付与してください

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

これが機能するかどうかを確認します。


5

私はdebianを使用しています。非常に自然なことを見つけました。

apt-get install docker-compose

そしてそれは仕事をしました(centosではテストされていません)


1

上記の回答を参照しました(個別のソリューションを個別に参照するのに十分な評判がないため、この場所でまとめて行います)、いくつかの重要な提案を補足したいと思います。

  1. docker-composeリポジトリからインストールできます(このパッケージがリポジトリにある場合は、このパッケージを使用してシステムにリポジトリを追加できない場合)またはuse curlを使用してバイナリをダウンロードします-プロジェクトの公式ウェブサイトのtotourial-src:https://docs.docker.com/compose/install /

  2. リポジトリからのdocker-composeはバージョン1.8.0です(少なくとも私は)。このdocker-composeバージョンは、バージョン3の構成ファイルをサポートしていません。バージョン= <2のサポートしかありません。プロジェクトの公式サイトでは、バージョン3のコンテナ構成を使用することを推奨しています-src:https ://docs.docker.com/compose/compose-file / compose-versioning /。dockerでの作業に関する私自身の経験から、バージョン3でコンテナー構成を使用することをお勧めします-バージョン<3よりも使用する構成オプションが多くあります。バージョン3の構成構成を使用する場合は、docker-composeを少なくとも1.17のバージョン(できれば最新の安定版)に更新/インストールする必要があります。プロジェクトの公式サイトは、このプロセスを実行するための一般的な方法です-src:https://docs.docker.com/compose/install/

  3. 古いdocker-composeバイナリを手動で削除しようとすると、デフォルトのパスに不足しているファイルに関する情報が含まれている可能性があります/usr/local/bin/docker-compose。私の場合、docker-composeはデフォルトのパス/ usr / bin / docker-composeにありました。この場合、システムの検索ツールを使用して、バイナリファイルdocker-composeを検索することをお勧めします-構文例:sudo find / -name 'docker-compose'。それは私を助けました。これのおかげで、私は古いdocker-composeバージョンを削除し、安定版をシステムに追加しました-curlツールを使用してバイナリファイルdocker-composeをダウンロードし、適切なパスに配置して適切なアクセス許可を与えます-このすべてのプロセスには上記の投稿で説明されています。

よろしく、アダム


0

dockerをインストールしても、docker-composeがインストールされているわけではありません。前提条件として、既に行っているDockerエンジンをすでにインストールしている必要があります。その後、Centos 7用のこのリンクに従ってdocker-composeをインストールできます。


いいえ、「yum install docker-engine」というコマンドを実行しましたが、エラーが表示されますパッケージdocker-engine-1.11.0-1.el7.centos.x86_64がすでにインストールされており、最新バージョンであり、それでもdocker-composeを実行しないとエラーが発生します/ usr / local / bin / docker-compose:1行目:{error:Not Found}:コマンドが見つかりません
mahen3d

私が言ったように:DockerエンジンはDocker composeとは異なるものです。したがって、Dockerエンジンをインストールして、Dockerで作業するだけでよいのですが、Docker Composeを使用したい場合は、それを個別にインストールする必要があります(エンジンのインストールは前提条件です(これは既に行っています))。だから私が答えで私が与えたリンクを試してください(あなたはcurlまたはpipを使って
docker

0

docker-composeは現在docker(-engine)を利用するツールですが、dockerの配布には含まれていません。

インストールマニュアルへのリンクは次のとおりです。https//docs.docker.com/compose/install/

TL; DR:

curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/bin/docker-compose

(1.8.0は将来変更される予定です)



0

上記の解決策ではうまくいきませんでした。しかし、私はこれがうまくいったことを発見しました:

sudo apt-get update -y && sudo apt-get install -y python3-pip python3-dev
sudo apt-get remove docker docker-engine docker.io
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo pip3 install docker-compose
#sudo docker-compose -f docker-compose-profess.yml pull ofw
sudo usermod -a -G docker $USER
sudo reboot
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.