問題タブ [docker]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
centos - Docker で Centos sshd にアクセスできない
SSH Daemon Serviceという記事を読みました。しかし、Centos6.4 で実行したいです。なのでほぼ同じ構造で公式のcentosイメージからセットアップしました。その後、centos sshd サーバーに接続しますが、接続がすぐに閉じられます。これがメッセージです。
centos sshd サーバーに接続できないのはなぜですか?
architecture - コンテナー (docker) 内からアプリをアナウンスする
週末にdocker's IRCでこの質問をしましたが、答えを熟考する前に立ち去らなければなりませんでした:
コンテナ内で多数のアプリケーションを実行している場合 (ここでは、それらがすべて同じ物理ハードウェア上で実行されていると仮定しますが、そうである必要はありません)、それぞれがそれぞれを見つけられるようにしたいと考えています。その他は自動的に。
ある種のレジストリ ( etcdや DNS-SD/Bonjour など) を使用して、サービスと関連する詳細をアナウンスし、他のアプリケーションにそれらを見つけて、それに応じてトラフィックをルーティングさせることができます。
ここでの問題は、アプリケーションはコンテナー内でサービスを提供しているホスト名/ポートを認識できますが、これはアクセス可能なポートまたはアドレスである必要はないということです。結合する必要がある 2 つの情報があります。
- サービスにアクセスできる場所。コンテナの外からアクセス可能
- サービスの機能 (バージョン番号、サービスの種類); コンテナ内からアクセス可能
コンテナの壁を越えてこの情報を取得する方法を教えてください。
- TCP 経由で docker をコンテナーに公開することで、アプリはその表示場所を照会できますが、これは関心の分離に違反しているようです。
- アナウンスの準備のためにコンテナが開始された後、ホスト システムが照会するファイル/ポートをコンテナで開くことができますが、これは WSDL を再発明しているように感じます。
この問題をどのように解決すべきかについての考えやガイダンスはありますか?
docker - Docker.IO ファイルシステムの一貫性
docker コンテナーを作成し、ファイルを作成してコンテナーを終了しました。
コンテナを再起動すると:
docker run -i -t ubuntu /bin/bash
ファイルがどこにも見つかりません。確認/var/lib/docker/
したところ、私のファイルが含まれる別のフォルダーが作成されました。と関係があることはわかっていUnion FS
ます。
- 自分のファイルを入れて同じコンテナーを再起動するにはどうすればよいですか?
- ファイルを変更してコンテナーをエクスポートするにはどうすればよいですか?
docker - Docker 用の独自の基本イメージを作成するにはどうすればよいですか?
Docker ドキュメントによると、独自のイメージをビルドするには、FROM
命令を使用して常にベース イメージを指定する必要があります。
明らかに、Docker indexには選択できるイメージがたくさんありますが、自分でビルドしたい場合はどうすればよいでしょうか? それは可能ですか?
base
私が正しく理解している場合、イメージはUbuntuから構築されており、Debianイメージを試してみたいと思っています。さらに、Docker がどのように機能するかを本当に理解したいと思っていますが、そのbase
イメージはまだ私にとってブラックボックスです。
rabbitmq - ある Docker コンテナーから別の Docker コンテナーに接続する
1 つの Docker コンテナーで rabbitmq-server を実行し、セロリを使用して別のコンテナーから接続したい ( http://celeryproject.org/ )
以下のコマンドを使用してrabbitmqを実行しています...
セロリを実行する
http://docs.celeryproject.org/en/latest/getting-started/first-steps-with-celery.htmlで接続を検証するための非常に基本的なチュートリアルを実行しようとしているとき
接続拒否エラーが発生します:
consumer: amqp://guest@127.0.0.1:5672// に接続できません: [Errno 111] 接続が拒否されました。
セロリと同じコンテナにrabbitmqをインストールすると、正常に動作します。
コンテナが相互にやり取りするにはどうすればよいですか?
docker - docker : commit は passwd コマンドによる変更を保持していないようです
...パスワードを変更します。
別のシェルで:
次に、コンテナを起動します。
次に、ログインを試みます。
以前に「コミット」されたパスワードを使用すると、失敗します(無効なパスワードまたはユーザー名)...
コミットが適切に行われたことを確認するために、次のことを行いました。
...コミット前のコンテナ内。
そして実行します:
したがって、コミットは何かを行っていますが、 passwd コマンドを永続化していません...
バージョン:
そして、dhrp/sshd は、たまたま docker index にあるものです....
docker - Docker LXC コンテナーの MAC アドレスを設定するには?
docker コンテナーを実行すると、ランダムな MAC アドレスが使用されていることがわかります。
コンテナーの実行に特定の MAC アドレスを設定するにはどうすればよいですか?
同じ MAC アドレスで複数のコンテナーを同時に実行することはできますか? これらのコンテナは、外部ネットワークにアクセスする必要はなく、互いに通信する必要もありません。
docker - Docker で永続ストレージ (データベースなど) を処理する方法
Docker コンテナーの永続ストレージをどのように扱うのでしょうか?
私は現在、このアプローチを使用しています。たとえば、PostgreSQL 用のイメージをビルドしてから、コンテナーを開始します。
IMHOには、コンテナ「c0dbc34fd631」を(偶然に)削除してはならないという欠点があります。
ホスト ボリュームを「-v」でコンテナーにマウントすることも考えられますが、コンテナー内のユーザーIDがホストからのユーザー IDと必ずしも一致するとは限らず、権限が台無しになる可能性があります。
注:代わりに、データのみのコンテナに割り当てた名前を使用する--volumes-from 'cryptic_id'
こともできます(受け入れられた回答を参照)--volumes-from my-data-container
my-data-container
docker run --name my-data-container ...
nginx - 仮想ホストを Docker ポートに割り当てる
カスタム ドメイン (*.foo) へのすべての Web 要求が Docker ホストの IP アドレスにマップされるように、ワイルドカード DNS をセットアップしました。Apache (または Nginx) インスタンスを実行している複数のコンテナーがある場合、各コンテナーは Apache ポート (80) を何らかの外部インバウンド ポートにマップします。
私がやりたいことは、カスタム DNS サーバーを介して (Docker ホストの) 正しい IP アドレスに既にマップされている container-1.foo に要求を行うことですが、デフォルトのポート 80 要求を正しい Docker 外部にプロキシします。指定されたコンテナーからの正しい Apache インスタンスがカスタム ドメインに基づいて応答できるようにポートを変更します。同様に、container-2.foo は 2 番目のコンテナーの Apache にプロキシします。
これに対して事前に構築されたソリューションはありますか、Docker ホストで Nginx プロキシを実行するのが私の最善の策ですか、それとも Docker コンテナを管理する可能性がある node.js プロキシを作成する必要がありますか (Web 経由で開始/停止/再構築) )、 また...?Docker コンテナーの使用を、外部ポートやコンテナーのジャグリングではなく、より自然なイベントのようにするために、どのようなオプションがありますか?
docker - Docker イメージをコンテナーとして実行する
から Docker イメージをビルドした後dockerfile
、イメージが正常にビルドされたことがわかりますが、どうすればよいですか? コンテナとして実行できないのでしょうか?