docker runとstartの違い

docker runとstartの違い

docker における実行と開始の違い

Docker run はミラーイメージを指定します。

そしてdocker startはコンテナを指定します

Docker run はイメージを使用してコンテナを生成し、コンテナを起動しますが、Docker start は以前に生成されたコンテナを起動します。

試す

Docker start はすでに作成されているコンテナを起動します。

例えば、私のDockerにはSpringbootプロジェクトのミラーがあります

次に、docker run コマンドを使用して起動します。docker ps を使用すると、springboot コンテナが起動されたことがわかり、その後停止します (docker stop)

次に、docker start を使用して起動し、docker ps を使用して、以前に停止したものが起動したことを確認します。

[root@localhost ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
springbootdocker 最新 5fe8370f7f83 25 時間前 677 MB
daocloud.io/rabbitmq 3-management 1d0a5c8a8d4e 4 週間前 177 MB
daocloud.io/library/tomcat 最新 89481b5d9082 7 週間前 506 MB
daocloud.io/library/mysql 5.5 d404d78aa797 3か月前 205 MB
daocloud.io/library/java 最新 d23bdf5b1b1b 2年前 643 MB
docker.io/java 8 d23bdf5b1b1b 2年前 643 MB
[root@localhost ~]# docker run --name springboot -p 8080:8080 -d 5f
dd100a4c60a7a6606244873bc61a8a6f419361ab78fcd038d4baef3f38f05157
[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
dd100a4c60a7 5f "java -Djava.secur..." 19 秒前 18 秒前にアップ 0.0.0.0:8080->8080/tcp springboot
[root@localhost ~]# docker stop dd
dd
[root@localhost ~]# docker ps -a
コンテナID イメージ コマンド 作成ステータス ポート名
dd100a4c60a7 5f "java -Djava.secur..." 39 秒前 終了 (143) 3 秒前 springboot
f3b181616dac 1d0a5c8a8d4e "docker-entrypoint..." 3 週間前 終了 (255) 2 週間前 4369/tcp、5671-5672/tcp、0.0.0.0:5762->5762/tcp、15671/tcp、25672/tcp、0.0.0.0:15672->15672/tcp myrabbit0
ea0a9cb0fe2f 89481b5d9082 "catalina.sh run" 4 週間前 終了 (129) 4 週間前 clever_leakey
[root@localhost ~]# docker start dd
dd
[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
dd100a4c60a7 5f "java -Djava.secur..." 約 1 分前 2 秒前に起動 0.0.0.0:8080->8080/tcp springboot
[root@localhost ~]#

補足: Docker コンテナの起動 | 再起動 | 停止

最近、Fabric ネットワークのメンテナンス中に、サーバーの電源障害が発生しました。Kafka と Zookeeper のコンテナを除き、他のコンテナはすべて Exited 状態でした。

コンテナを再起動する必要があります

1. dockerを起動する

停止したコンテナを1つ以上起動する

docker start [オプション] コンテナ [コンテナ...]
#コンテナの名前またはIDに従ってコンテナを起動できます $ docker start ID/NAME

オプション:
# -a パラメータはコンテナに接続し、出力またはエラーを出力します -a, --attach STDOUT/STDERR をアタッチし、シグナルを転送します 
# パラメータが分かりません…
   --detach-keys string コンテナをデタッチするためのキーシーケンスを上書きする
# -i パラメータはコンテナを起動し、対話モードに入ります -i, --interactive コンテナの STDIN を接続します

2. dockerを再起動する

コンテナが以前に起動または停止されたかどうかに関係なく、コンテナを再起動します。

docker restart [オプション] コンテナ [コンテナ...]
#コンテナの名前またはIDに応じてコンテナを再起動できます $ docker restart ID/NAME

オプション:
# -t パラメータ コンテナを停止するまでの待機時間 (デフォルト 10 秒)
 -t, --time int コンテナを強制終了する前に停止を待つ秒数 (デフォルト 10)

3. docker を停止する

実行中のコンテナを停止する

docker stop [オプション] コンテナ [コンテナ...]
#コンテナの名前またはIDに応じてコンテナを停止できます $ docker restart ID/NAME

オプション:
# -t パラメータ コンテナを停止するまでの待機時間 (デフォルト 10 秒)
 -t, --time int 停止を待つ秒数 (デフォルト 10)

これらのコマンドを使用すると、停止したコンテナを再起動するのに便利です。

もう 1 つ注意すべき点は、Fabric ネットワーク内のチェーンコード コンテナは、上記のコマンドを使用して再起動する必要がないことです。起動したピア ノードがクエリ コマンドを使用してクエリを実行すると、チェーンコード コンテナが自動的に起動します。

以下もご興味があるかもしれません:
  • Dockerイメージ送信コマンドcommitの動作原理と使い方の詳細な説明
  • docker run 起動パラメータ コマンドを表示する方法 (推奨)
  • Dockerのプロセスとイメージを実行するための基本コマンドの詳細な説明

<<:  React コンポーネント間で通信する 3 つの方法 (シンプルで使いやすい)

>>:  HTML テキストエスケープのヒント

推薦する

JavaScript は自由に移動するウィンドウのマウス制御を実装します

この記事では、フリーウィンドウのマウス制御を実現するためのJavaScriptの具体的なコードを参考...

Vue+echarts で積み上げ棒グラフを実現

この記事では、積み上げ棒グラフを実装するためのVue+echartsの具体的なコードを参考までに紹介...

MySQL 5.7 のユニオンオール使用法のブラックテクノロジーを 5 分で学ぶ

MySQL 5.6 での union all のパフォーマンスパート 1:MySQL 5.6.25 ...

CentOS7環境でDockerを使ってPHP動作環境を構築する手順を詳しく解説

関連記事: CentOS7でyumを使用してDockerをインストールするDockerを使ってWin...

mysql 更新ケース更新フィールド値が固定されていない操作

特定のデータの一括更新処理において、特定のステータスが固定値に更新されるなど、更新するフィールドの値...

JavaScriptの動作メカニズムの詳細な説明とイベントループについての簡単な説明

目次1. JavaScript がシングルスレッドなのはなぜですか? 2. タスクキュー3. イベン...

Vue で Axios カプセル化を使用するための完全なチュートリアル

序文現在、プロジェクトでは、Axios ライブラリが HTTP インターフェース リクエストによく使...

反応ルーティングでパラメータを渡すいくつかの方法についての簡単な説明

最初のパラメータ渡し方法は、動的ルーティングパラメータ渡しです。リンクのパス属性を設定することで、ル...

Linux で文字化けしたファイルや特殊文字のファイルを削除する方法

エンコーディングの理由により、Linux サーバーに中国語のファイルやディレクトリをアップロードまた...

HTML img タグの alt 属性と title 属性の使い方の紹介

ブラウザベンダーが標準を曲げて、ルールに従わないことをすると、問題や少なくとも混乱が生じる可能性があ...

Vue3+Vue-cli4 プロジェクトで Tencent スライダー検証コードを使用する方法

導入:従来の画像検証コードと比較して、スライダー検証コードには次の利点があります。サーバーは検証コー...

MySQLデータベースが予期せずクラッシュし、テーブルデータファイルが破損して起動できなくなる問題を解決します。

問題: MySQL データベースが予期せずクラッシュしたため、データベースを起動できませんでした。エ...

Vue が Web オンラインチャット機能を実現

この記事では、Webオンラインチャットを実装するためのVueの具体的なコードを参考までに紹介します。...

CSS3を使用してヘッダーアニメーション効果を作成する

Netease Kanyouxi公式サイト(http://kanyouxi.163.com/)(棚...

ポップアップ効果を実現するにはjsを使用します

この記事の例では、ポップアップ効果を実現するためのjsの具体的なコードを参考までに共有しています。具...