2016-05-25 10 views
1

私はCIプラットフォームにドッカーを統合しようとしています。 Docker-in-a-dockerソリューションで正しく機能した後、私はDockerメンテナの1人のブログ記事を見に行きました。彼は、Docker-in-a-dockerソリューションをCIに使用するのではなく、/var/run/docker.sockをCIコンテナに単にマウントする必要があると言います。単にCI&Docker-in-a-Docker

https://jpetazzo.github.io/2015/09/03/do-not-use-docker-in-docker-for-ci/

あなたはCIのコンテナ(ジェンキンスまたはその他)が起動したときに、入れて、代わりにドッカー・イン・ドッカーと一緒に何かをハッキングの、とそれを起動します。

docker run -v /var/run/docker.sock:/var/run/docker.sock ...

私はこれを試しました。私のCIコンテナとしてジェンキンスを使用して

docker run -p 8080:8080 -p 50000:50000 -v /var/run/docker.sock:/var/run/docker.sock jenkins

:私は、次のコマンドを実行しました。

上記のコマンドを実行すると、jenkinsが正常に起動し、docker.sockファイルが/var/run/パスにあることをコンテナにジャンプできます。しかし

、私はコマンドを実行します。dockerを、次のようなメッセージを持つマシンに戻ります:

bash: docker: command not found

誰もが、私は著者の指示に従って、この作業を行うために行方不明です何を知っていますか?

新しいCentOS 7ボックスでDocker v. 1.11.1を使用しています。

ありがとうございます。

答えて

0

今日これを解消しました。上記のコマンドは、dockerデーモン+依存関係がコンテナに追加されている限り動作します。

RUN curl -sSL https://get.docker.com/ | sh

これはコンテナにドッカーをインストールし、そして私は、コンテナ内からdocker imagesを実行したときに、私はすべてを見ることができました。私の場合、私はまた、ラインを含め、単純なDockerfileを、書いてしまいました私のホストマシンからの画像。私は今、コンテナ内からdockerコマンドのすべてを使用できるようになりました。