別のコマンドを使用して停止した Docker コンテナを起動するにはどうすればよいですか?

別のコマンドを使用して停止した Docker コンテナを起動するにはどうすればよいですか?

こんにちは、私は鄭歌です。多くの人がこの問題に遭遇すると思います。コンテナは正常に動作していましたが、ある日エラーが報告され終了しました。コンテナを再起動しても、デフォルトのコマンドがクラッシュするためエラーが報告され、コンテナの起動後に docker exec を使用できなくなります。

今日は、イメージを再構築せずにコンテナ エラーの問題を解決する方法を紹介します。たった2つのステップで完了します。

最初のステップは、エラーのあるコンテナを新しいイメージに保存することです。

この手順では、コンテナーへの以前の変更を保存します。コンテナに何も書き込まれていない場合は、この手順は無視できます。

まず、エラーが発生したコンテナを確認し、その CONTAINER_ID を記録します。

ドッカーps -a

次に、コンテナを新しいイメージに保存します。

 docker コミット $CONTAINER_ID somenzz / image_xxx_new

2番目のステップは、新しいイメージから新しいコマンドを開始することです

たとえば、コンテナを修復するためにシェルを起動します。

 docker run -ti --entrypoint=sh somenzz/image_xxx_new

ここではEntrypoint[1]が使用されています。イメージをビルドするときに、コンテナの起動時に実行コマンドを構成するために CMD または ENTRYPOINT を使用できますが、これら 2 つは異なります。

  • CMD コマンドは、コンテナの起動後に実行されるデフォルトのコマンドとそのパラメータを設定しますが、CMD によって設定されたコマンドは、docker run コマンドに続くコマンドラインパラメータに置き換えることができます。
  • ENTRYPOINT は、コンテナの起動時に実行されるコマンドを構成します。 docker run の実行時に他のコマンドが指定されていても無視されずに実行されます。

私はPythonコンテナ方式を使用しています

コンテナはパッケージ化されたオペレーティング環境です。サーバーに Docker をインストールしたので、Python 環境を取得するのは簡単です。

まず、Python イメージをダウンロードします。最新バージョンは3.10.4です。 docker search python を実行すると表示できます。

 sudo docker pull python

次に、終了しないバックグラウンド コンテナーを起動します。

 sudo docker run --name mypython -dt python /bin/bash

その後は、必要に応じて Python を使用できます。

 sudo docker exec - it mypython python [コンテナ内ではなく、ホストマシン上の Python スクリプト]

依存関係をインストールする場合:

 sudo docker exec -it mypython pip インストールリクエスト

この方法で Python コンテナを使用すると、システム ファイルは変更されません。安全で環境にも優しいです。もう使用しない場合は、コンテナを停止して削除し、イメージを削除します。

<<:  マルチクラウド VS スカイコンピューティング、企業はクラウドコンピューティング戦略をどのように選択すべきでしょうか?

>>:  Canalys:2022年第1四半期のクラウドインフラサービス支出は世界全体で559億ドルに達した

推薦する

5月のネットワークアクセスプロバイダー市場シェア動向:中国電信がダブル優勝

IDC Review Network(idcps.com)は6月10日に次のように報じた。CNZZが...

競合他社の外部リンク公開リソースを正確に取得する方法

みなさんこんにちは。私は長沙SEOのLong Junです。前回の「友好リンク:他山の石で翡翠を磨く」...

全国人民代表大会は本日、オンライン情報の保護を強化する決定案を審議する。

全国人民代表大会常務委員会は本日、オンライン情報の保護強化に関する決定草案を審議する。新華社によると...

ウェブサイトが主要な検索エンジンのニュースソースであるかどうかを確認する方法

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますまず、ニュ...

Baizong Technology:米国100Gリアル高防御専用サーバー - 900元/月、米国CN2サーバー - 6500元/月(2*e5-2696v4/512gDD4/8TSSD/100M専用/232 IP

Baizong Networksは現在、ロサンゼルスデータセンターの独立サーバーに特別プロモーション...

Qingyun: 香港 VPS、動的 IP、1Gbps 帯域幅、無制限のトラフィック

LightNetwork Computing Limited は最近、香港 HKT データ センター...

Flashサイトの最適化の難しさについて簡単に説明します

検索エンジン最適化業界では、Flash サイトはこれまで、最適化が最も難しいタイプのサイトとみなされ...

dogyunのクラシッククラウドの簡単なレビュー - US Unicom AS4837シリーズ

ドギュンはどうですか?ドギュンはどうですか? Dogyunは、米国のcn2+cu2シリーズのクラウド...

Facebookはトルコ当局へのユーザーデータ提供を否定

Sina Technology News:北京時間6月27日早朝のニュースによると、Facebook...

たった一晩でエントリー数が0から4万に急増?

ちょうど昨日、私のウェブサイトが Soso によってブロックされ、インデックスに登録されていた 40...

Volcano Engine は成都の企業と協力し、「クラウド + AI」の旅を大成功に導きます。

チャンスと課題が共存する時代において、企業としてトレンドに乗り遅れず、「クラウド+AI」を効果的に活...

動画サイトの2番目の陣営は上場の望みがなく、必死に脱出方法を探しており、急いで所有者を探している。

8年間の苦難を経ても、オンライン動画の淘汰の戦いは未だ終わっていない。 「この業界に入ってから、ぐっ...

Baiduランキングで良い成績を収めるには、粘り強さと方法論が鍵となる

最近、百度がいくつかの大きな動きを見せた後、一部のウェブサイトは持ちこたえ、一部のウェブサイトはラン...

特別なソフト記事を書くための4つのステップ

ソフト記事は「ソフト」という言葉を強調します。高品質のソフト記事がウェブサイトの宣伝に果たす役割は自...

ウェブサイトの最適化を恋愛関係のように扱う

恋に落ちることから結婚に至るまでは長いプロセスであり、多くのステップ、多くの浮き沈み、多くの甘い瞬間...