私はローカルWP開発を行っています。私は変更を加えるたびにDocker-composeは毎回新しいデータベースを作成し、データは保存されません。
(のようなプラグインを追加)し、実行します:docker-compose up -d && docker-compose logs -f wordpress
それは新鮮なDB作成し、プラグインが変更と長いが削除されます。毎回.wp
ファイルを1つの移行プラグインでエクスポートして再度インポートすることができますが、より良い方法は何ですか?
私はローカルWP開発を行っています。私は変更を加えるたびにDocker-composeは毎回新しいデータベースを作成し、データは保存されません。
(のようなプラグインを追加)し、実行します:docker-compose up -d && docker-compose logs -f wordpress
それは新鮮なDB作成し、プラグインが変更と長いが削除されます。毎回.wp
ファイルを1つの移行プラグインでエクスポートして再度インポートすることができますが、より良い方法は何ですか?
docker-compose.ymlにtop-level volumeをお試しください。適切に設定されていれば、ドッカーの作成によってバックエンドサービスが再起動/再構築/破棄された回数に関係なく、ボリュームを使用してファイルシステムレベルでバックエンドデータを保持できます。
データを永続化したい場合、そのデータをボリュームにマウントできます。ドッカーでのボリュームの使用は、documentationから理解できます。ワードプレスの場合は、ホストディレクトリをコンテナの/var/www/html/
にマウントすることができます。ボリューム構成に従うことでこれを手助けする必要があります。
volumes:
- ./html/:/var/www/html/
ヒント1:すでに自分のイメージにインストールするいくつかのことをしたい場合は、dockerfile自体に、次にインストールし、独自のカスタムイメージを作成します。 は、docker-compose.yml
でドッカーファイルの使用に役立ちます。
ヒント2:ドッカーでローカル開発を行う方法をよりよく理解するために、ドッカーファイルをこの目的に使用することをお勧めします。
ドッカーファイルでは、何かをインストールするコマンドRUN
を使用できます。各RUNコマンドの出力は、キャッシュに格納されます。したがって、イメージを正常に構築すると、次のRUN
コマンドは実行されず、その代わりにキャッシュが使用されます。
host:container
例:あなたは、次の構文を使用することができるサービスボリュームの下
wordpress:
volumes:
-../html:/var/www/html
に対するホスト上の絶対パスマッピング
/opt/data:/var/lib/mysql
パスを指定作成ファイル
./cache:/tmp/cache
ユーザーの相対パス
~/configs:/etc/configs/:ro
というボリューム
datavolume:/var/lib/mysql
供給可能 – bluescores
は、残念ながら、私はあなたは親切に私を指すことができ、それを供給することはできません場合は、あなたのドッキングウィンドウ-compose.yml私が探すべき方向に? – JohnSnow