docker を再起動するとデータは失われますか?
Docker を使用して Web アプリケーションまたは mysql データベースをデプロイすると、コンテナーが再起動されると、コンテナーの実行中に生成されたログまたはデータベース データがクリアされることがわかります。
解決策:
Docker は、ホスト ディスク ディレクトリをマウントすることでデータを永続的に保存できます。
1. コンテナーの作成時に Docker Volume を実行する
docker run コマンドを使用して Docker コンテナーを実行し、イメージ ubuntu/nginx を使用して、ローカル ディレクトリ /tmp/source をコンテナ ディレクトリ /tmp /destination
docker run -itd --volume /tmp/source:/tmp/destination --name test ubuntu/nginx bash
ubuntu に基づいて Docker コンテナを作成しました/nginx イメージ。
指定されたコンテナーの名前は test であり、––name オプションで指定されます。
Docker ボリュームは ––volume (-v と省略可能) オプションで指定され、ホストの /tmp/source ディレクトリはコンテナ内の /tmp/destination ディレクトリに対応します。
2. Docker ボリュームの表示
docker Inspection コマンドを使用して、Docker コンテナーの詳細情報を表示します:
docker Inspection --format='{{json .Mounts }} 'test | python -m json.tool[{"Destination": "/tmp/destination", "Mode": "", "Propagation": "", "RW": true, "Source": "/ tmp/source","Type": "bind"}]
--format オプションを使用して、必要なコンテナ情報を選択して表示します。 .Mount はコンテナの Docker Volume 情報です。
python -m json.tool は、出力された json 文字列をフォーマットして表示できます。
Source は、ホスト上のディレクトリ、つまり /tmp/source を表します。
Destination はコンテナ内のディレクトリ、つまり /tmp/destination です。
3. ローカル ファイルはコンテナーに同期できます
local/tmp/source ディレクトリに新しい hello.txt ファイルを作成します
touch /tmp/source/hello .txtls /tmp/source/hello.txt
hello.txt ファイルは、container/tmp/destination/ ディレクトリに表示されます
docker exec コマンドを使用して、コンテナ内でコマンドを実行します。
docker exectest ls /tmp/destination/hello.txt
したがって、ホスト マシン上のディレクトリ /tmp/source/ に対する変更は、コンテナ ディレクトリ /tmp/destination/ に同期できます。
4. コンテナ ファイルはホスト マシンに同期できます
container/tmp/destination ディレクトリに新しい world.txt ファイルを作成します
docker exec test touch /tmp /destination/world .txtdocker exec test ls /tmp/destination/hello.txtworld.txt
world.txt ファイルは host/tmp/source/ ディレクトリに表示されます
ls /tmp /source/hello.txt world.txt
関連チュートリアルの詳細については、PHP 中国語 Web サイトの dockertutorial 列に注目してください。
以上がdocker を再起動するとデータは失われますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Dockerデスクトップの使用方法は? Dockerデスクトップは、ローカルマシンでDockerコンテナを実行するためのツールです。使用する手順には次のものがあります。1。Dockerデスクトップをインストールします。 2。Dockerデスクトップを開始します。 3。Docker Imageを作成します(DockerFileを使用); 4. Docker画像をビルド(Docker Buildを使用); 5。Dockerコンテナを実行します(Docker Runを使用)。

Dockerバージョンを取得するには、次の手順を実行できます。Dockerコマンド「Docker -version」を実行して、クライアントバージョンとサーバーバージョンを表示します。 MacまたはWindowsの場合は、DockerデスクトップGUIのバージョンタブまたはDockerデスクトップメニューのバージョン情報を表示することもできます。

Docker画像を作成する手順:ビルド命令を含むDockerFileを書きます。 Docker Buildコマンドを使用して、ターミナルで画像を作成します。画像にタグを付け、Dockerタグコマンドを使用して名前とタグを割り当てます。

国内のミラーソースに切り替えることができます。手順は次のとおりです。1。構成ファイル/etc/docker/daemon.jsonを編集し、ミラーソースアドレスを追加します。 2。保存して終了した後、Docker Service Sudo SystemCtlを再起動してDockerを再起動して、画像のダウンロード速度と安定性を改善します。

Docker画像を更新する手順は次のとおりです。最新の画像タグ新しい画像をプルする新しい画像は、特定のタグのために古い画像を削除します(オプション)コンテナを再起動します(必要に応じて)

Dockerログを表示する方法は次のとおりです。たとえば、Docker Logsコマンドを使用します。たとえば、Docker logs container_name docker execコマンドを使用して /bin /shを実行し、logファイルを表示します。 cat /var/log/container_name.log docker-compose -f docker-comのDocker ComposeのDocker-Composeログを使用します。

Dockerに画像を保存するには、Docker Commitコマンドを使用して、指定されたコンテナの現在の状態、Syntax:Docker Commit [Options]コンテナID画像名を含む新しい画像を作成できます。画像をリポジトリに保存するには、Docker Pushコマンド、Syntax:Docker Push Image Name [:Tag]を使用できます。保存された画像をインポートするには、Docker Pullコマンド、Syntax:Docker Pull Image Name [:Tag]を使用できます。

Dockerコマンドを実行する方法は? Dockerをインストールし、デーモンを起動します。一般的なDockerコマンド:Docker画像:表示画像の表示Docker PS:ディスプレイコンテナDocker run:run docker docker stop:Stop Container docker RM RM:Delete container container containerとcontainerとdocker exec:execute command docker adtach:adticle console docker logs:ディスプレイログドッカーのコミット:ミラー停止停止dock
