2016-05-28 8 views
0

ドッカーとredisの両方が初めてです。ドッカー内でredisを実行するようにserverAを設定しました。 redisデータベースには、1000個のキーと値のペアが事前に設定されています。このコンテナにデータが残っていることを確認できます。私はこのコンテナから新しいドッカー画像を作成し、ドッカーのリポジトリにアップロードしました。ドッキングされたredisを別のサーバーに移行する

serverBで、私はredisイメージを "redis-preseeded"して起動しました。私が接続し、 'info keyspace'コマンドを発行するときにredis-cliツールを使用すると、鍵スペースは空であり、それを通って作られたデータはないことを示唆しています。私は間違って何をしていますか?

+0

あなたがドッキングウィンドウを使用しましたが、新たなコンテナを作るためにコミット? –

+0

はいドッカーコミットを使用しました – user3892260

+0

ドッカーファイルを投稿できますか?あるいは、あなたはあらかじめ作られたものを使っていますか? –

答えて

1

Redisの公式画像は使用していますか?

これはボリュームが宣言した:

.. 
VOLUME /data 
WORKDIR /data 
.. 

ボリュームはdocumentationに記載されています。一言で言えば、著者が行っていることは、ドッカー・エンジンによって維持される外部ディスク・ボリュームにデータを保管するようにRedisを構成することです。これはより効率的であるだけでなく、ユーザーがデータを使用してコンテナにデータを分離しておくこともできます。

イメージのスナップショットにはデータが含まれません(これは良いことだと思います)。

あなたはこれらの概念を理解すれば、それはデータがサーバー間で移動することができる方法がより明らかになった:

+0

ありがとうございました。あなたの説明は、それがどのように機能し、私は自分の仕事を成功裏に完了することができたのか理解するのを助けました。このエクスポート/インポート.shは、操作を段階的に実行する方法を示しているので便利です。https://gist.github.com/alister/ed664cb51c21bc801e9a – user3892260

+0

@ user3892260便利なスクリプトの例では、データコンテナを使用していますが、これが推奨パターンとなります。喜んで助けてください。 –

関連する問題