カスタムイメージの実行
メニューを表示するにはスワイプしてください
カスタムイメージからコンテナを実行
独自のカスタムイメージからコンテナを実行するには、docker run コマンドを使用します。イメージ名を指定し、必要に応じて実行中のコンテナに名前を付けることができます。
myapp:latest というイメージを作成した場合、次のコマンドでコンテナを起動します:
docker run myapp:latest
--name フラグを追加すると、コンテナに覚えやすい名前を付けることができ、管理が容易になります:
docker run --name my-running-app myapp:latest
さらに、-d フラグを追加することで、コンテナをバックグラウンド(デタッチドモード)で実行できます:
docker run -d --name my-running-app myapp:latest
docker run の主なオプション:
--nameでカスタムコンテナ名を指定;-dでデタッチドモードで実行;image:tag(例:myapp:latest)でイメージとタグを指定。
コンテナに明確な名前を付け、適切なモードで実行することで、効果的な管理と監視が可能になります。
コンテナ実行時のポート公開とボリュームマウント
コンテナを実行する際、アプリケーションとのやり取りやデータの永続化のために、ポートの公開やボリュームのマウントが必要になることがよくあります。
ポート公開 は -p フラグで行い、ホストのポートとコンテナ内のポートをマッピングします:
-p <host_port>:<container_port>でポートをマッピング;- ホストからコンテナ内で動作するアプリケーションにアクセス;
- 複数のコンテナを異なるホストポートで実行。
例えば、コンテナ内のポート80で動作するWebアプリケーションに、ホストのポート8080からアクセスする場合:
docker run -p 8080:80 myapp:latest
ボリュームのマウント では、ホストとコンテナ間でファイルを共有できます。-v フラグでソースとターゲットのディレクトリを指定します:
-v /host/path:/container/pathでディレクトリをマウント;- コンテナで生成されたデータの永続化;
- ホストとコンテナ間で設定ファイルやコードを共有。
コマンド例:
docker run -v /host/path:/container/path myapp:latest
オプションの組み合わせ: 名前付け、ポート公開、ボリュームマウントを同時に指定してコンテナを実行できます:
docker run -d --name my-running-app -p 8080:80 -v /host/data:/app/data myapp:latest
この方法により、アプリケーションの通信方法やデータの保存場所を柔軟に管理でき、実運用環境での展開に対応できます。
カスタムコンテナ起動時の一般的な問題のトラブルシューティング
カスタムコンテナが起動しない、または予期しない動作をする場合、以下の手順で原因を特定し解決します:
- 次のコマンドでコンテナのログを確認:
docker logs <container-name>
- イメージが正常にビルドされているか、
CMDのENTRYPOINTまたはDockerfileが正しいか確認; - 必要なポートがホスト上ですでに使用されていないか確認;
- ボリュームをマウントする場合、ソースディレクトリが存在し、適切な権限があるか確認;
- デバッグのために
-itフラグを追加し、コマンドを上書きしてインタラクティブにコンテナを実行:
docker run -it myapp:latest /bin/sh
これにより、コンテナの環境を直接確認し、問題の原因を調査できます。
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください