WordPress開発用のネイティブDocker for Windows(Windows 10上)を使用しています。私は2つのコンテナを持っています:ワードプレスとMySQL。 MySQLコンテナには、実行間にDBデータが格納されるデータボリュームがあります。リブートの間にWindows 10上でMySQLコンテナを永続化する方法
「docker-compose up -d」でコンテナを開始し、「docker-compose down」で停止します。このように停止すると、MySQLデータはデータボリュームに正しく保存され、次回起動するとすべての変更が維持されます。
ただし、最初にMySQLコンテナを停止せずにWindows 10を再起動すると、前回の起動以降にデータベースに加えられた変更は保存されないようです。 Windows用のDockerは、再起動前に実行されていたものと同じボリュームを起動するのに十分スマートですが、DBデータを保存するように正しくシャットダウンすることは本当に気にしませんか?それは本当にそうですか、私は何かを誤解していますか?
システムの再起動時にデータを失わないようにする最も信頼性の高い方法は何ですか?再起動する前にすべてのMySQLコンテナを手動で停止するのは、特に複数のサーバが稼動しているときには面倒な作業です。おそらく、私は 'docker ps'の出力を解析し、再起動する前にすべてのMySQLコンテナを停止するスクリプトを作成することができますが、おそらく私はここでホイールを再開発しているのでしょうか?
状況に対処する最もよい方法は何ですか?私は高低を検索しましたが、トピックについては何も見つかりませんでした。私はこれを必要とする唯一の人ですか?ここに何もないのですか?
本当にありがとうございました!ありがとう!
P.S.私のドッキングウィンドウ-compose.ymlファイルは次のとおりです。
version: '2'
services:
db:
image: mysql:5.7
ports:
- "9013:3306"
volumes:
- ./database:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
volumes:
- ./wordpress:/var/www/html
ports:
- "8013:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_TABLE_PREFIX: wpd1_
'docker-compose.yml'ファイルを表示できますか? ./database:/var/lib/mysql ' それは後にのみボリュームにデータを保存しているようだ - : ' ボリューム:janshair-カーン@ –
は、私が使用しています何私の質問文 – Kirlat