2017-09-15 3 views
1

Docker Windowsコンテナをいくつか実行します。私はを実行している間、これらのコンテナをバックアップする方法を探しています。私はバックアップ用コンテナへのスタンダールの方法を使用しようとする。しかし、私はこのようなエラーが出る:バックアップドッカーウィンドウRUNNINGコンテナ

PS C:\Users\roza> docker commit 908d6334d554 
Error response from daemon: windows does not support commit of a running container 
PS C:\Users\roza> docker export 908d6334d554 -o tar.tar 
Error response from daemon: the daemon on this platform does not support export of a container 

私は Windowsのコンテナを実行している/エクスポートをコミットできないのはなぜ?

このようなコンテナのバックアップを作成する方法がいくつかあります(外付けツールを使用しているかもしれません)。

+0

Windowsコンテナに制限があるかどうかわかりません。しかし、あなたは 'ドッキングウィンドウポーズを試すことができます'、その後 'ドッキングウィンドウはをコミット'と、それは実際に –

+0

を助けている場合、私はちょうど別のエラーを取得参照:デーモンから エラー応答:コンテナ908d6334d5548f09ba6d3eeac5b38f56025c44b7056ef56c39edae06c003c252を一時停止することはできません:一時停止中にエラーが発生しました908d6334d5548f09ba6d3eeac5b38f56025c44b7056ef56c39edae06c003c252コンテナ:失敗をWindowsシステムコールでは、要求はサポートされていません。 (0x32) –

答えて

1

これは聞きたいものではないかもしれませんが... コンテナの世界では、実行中のコンテナのバックアップは必要ありません。コンテナが存在するときに何かを失った場合、イメージはよりよく分割されます。コンテナが強制終了された後も存続する必要があるもの(ログ、アセット、一時フォルダなど)は、ボリュームとしてマップする必要があります。これにより、バックアップをより詳細に制御できます。

1

Windowsコンテナのコミットには、最初に停止してからコミットすることも含まれます。もう1つの制限は、VSSベースのアプリケーションはコンテナと相互運用できないということです。以前の答えが示唆したように、コンテナの標準的なアプローチは、イメージから新しいコンテナを単純にスピンアップすることです。

1

MicrosoftのWindowsイメージ(すべてのWindowsイメージ)はライセンスが付与されていますが、そのライセンスの一部はイメージをエクスポートできないことを意味します。一時停止/一時停止の欠如は、基本的な実装のためです。 Linuxは、Windows上にないcgroupで一時停止します。 HyperVコマンドを使用してWindows HyperVコンテナのみが一時停止をサポートします。

  • の容器、好ましくはドッキングウィンドウ-compose.ymlファイル
  • 用画像のレジストリ・サーバ
  • 設定:ドッキングウィンドウで何かをバックアップする、と述べた


    は、最大3つの事を裏付け関係します

  • ボリュームデータ

コンテナ自体はバックアップされていません。一時的なものではありません。牛を好む。ボリュームデータはファイルシステムディレクトリになり、このディレクトリで標準のバックアップツールを使用します。コンテナの実行中にバックアップできない場合は、まずコンテナを停止し、バックアップが完了したらコンテナを再起動します。