dockerコンテナの再起動後に/etc内の一部の設定ファイルがリセットされる問題を解決します

dockerコンテナの再起動後に/etc内の一部の設定ファイルがリセットされる問題を解決します

1.

コンテナ内の /etc/hosts、/etc/resolv.conf、/etc/hostname の 3 つのファイルはイメージ内に存在せず、/var/lib/docker/containers/ 内に存在します。コンテナを起動すると、これらのファイルは mount の形式でコンテナ内にマウントされます。

したがって、コンテナ内でこれらのファイルが変更された場合、変更された部分はコンテナの最上位層には存在せず、これら 3 つの物理ファイルに直接書き込まれます。

2. 再起動後に変更したコンテンツが消えてしまうのはなぜですか?

その理由は、Docker がコンテナを起動するたびに、新しい /etc/hosts ファイルが再構築されるからです。なぜでしょうか?

理由は、コンテナが再起動され、IP アドレスが変更され、hosts ファイル内の元の IP アドレスが無効になるためです。したがって、hosts ファイルを変更する必要があります。そうしないと、ダーティ データが生成されます。

3. 何か良い解決策はありますか?

docker run コマンドの --add-host パラメータを使用して、コンテナのホストと IP 間のマッピングを追加できます。

補足:Dockerコンテナで再起動設定が反映されない問題を解決する(ソース/etc/profile)

問題の説明:

Docker を使用する場合、コンテナ インスタンス内の /etc/profile などの設定ファイルをカスタマイズする必要がある場合があります。ただし、変更後は、コンテナを起動するたびに手動でソースを指定して再度有効にする必要があり、非常に面倒です。

解決:

コンテナ インスタンスで、~/.bashrc 構成ファイルの末尾に source /etc/profile を追加し、ファイルを保存して終了します。これにより、再起動後に手動操作なしで構成ファイルが自動的に更新されるようになります。

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • Dockerコンテナの起動失敗を解決する方法
  • Dockerスペースがいっぱいでコンテナに入れない場合の解決策
  • Docker コンテナのマウントディレクトリ操作の表示
  • docker run -v はデータボリュームを異常にマウントし、コンテナのステータスは常に再起動になります。

<<:  ウェブページ作成の基本宣言文書型記述(DTD

>>:  jQuery キャンバスで画像検証コード例を描画する

推薦する

MySQL エラー: 接続数が多すぎる場合の解決策

MySQLデータベースの接続が多すぎますこのエラーは明らかに、mysql_connect の後に m...

CSS の border 属性と display 属性の使い方の簡単な分析

境界プロパティの概要borderプロパティは要素の境界を設定します。境界線の3要素は、太さ、線の種類...

HTMLチュートリアル、簡単に学べるHTML言語

1. <body background=画像ファイル名 bgcolor=color text=...

Tomcat のメモリ構成の正しい姿勢についての簡単な説明

1. 背景多くのブログや記事を読みましたが、JVM のメモリ割り当て方法に関する包括的な記事は見つか...

MySQL 4G メモリ サーバー構成の最適化

会社のウェブサイトのアクセス数が増えてくると(1日10万PV以上)、当然MySQLがボトルネックにな...

バックアップと削除のためにリアルタイムでステートメントを検出するMySQLトリガーの考え方の詳細な説明

問題の説明: ユーザーは、テーブルに「違反」という単語を含むフィールドが時々表示されることを要求して...

Web 開発の面接と筆記試験に必須の知識(必読)

HTML のインライン要素とブロックレベル要素の違い:標準的なドキュメント フローでは、ブロック ...

Vue バックグラウンドでステータス ラベルをエレガントに記述する例

目次序文最適化変数の抽出二次包装 el-tag コンポーネント使用要約する序文バックエンドシステムの...

MySQLの基本操作を詳しく解説(第2部)

序文この記事には1. データベースのいくつかの主要な制約2. テーブル間の関係制約:主キー制約: 機...

フラットスタイルを使用してウェブサイトをデザインする方法

フラットなウェブサイト構造の本質はシンプルさです。コンテンツの重要なポイントを強調し、ページの装飾効...

HTML フォームタグチュートリアル (5): テキストフィールドタグ

<br />このタグは、さらにテキストを入力できる複数行のテキスト フィールドを作成する...

Centos8環境でSSHポート番号を変更する方法

目次序文始める序文サーバーのデフォルトの SSH ポート番号は通常 22 であるため、ほとんどのユー...

JavaScript は、マウスがテーブル行を通過するときに色の識別を実装します。

この記事では、マウスがテーブルの行を通過するときにJavaScriptを使用して色ラベルを表示する方...

ウェブサイトメンテナンスページのリスト構築のヒント

また、多くの場合、メンテナンスのために Web サイトを少なくとも数分間オフラインにする必要がありま...