@74thスマートフォン用の表示で見る@74th2015-12-07dockerのデータボリュームとそのバックアップ方法この記事はqiitaにも投稿しています→http://qiita.com/74th/items/41393f506d223850f2c3データの永続化はdockerでよく課題になると思います。containersの節に、いくつかの方法が示されています。https://docs.docker.com/engine/userguide/dockervolumes/データボリュームを利用するホストのディレクトリにマウントする。前まではホストのディレクトリに逃がしていたのですが、ホストのディレクトリとコンテナの中ではユーザの番号や書き込み権限の管理が違ったりして、うまくいかないことも多かったので、最近はまじめにデータボリュームを使うようにしています。MySQLを例に、データボリュームとそのバックアップ方法をまとめてみます。runにて-vで指定したディレクトリに、自動で作られます。exportしてもデータボリュームの内容は含まれません。コンテナ間のデータ共有は、データボリュームによってのみ可能です。イメージ自動で作られるだけではなく、コマンドで作ることもできます。MySQLのデータを管理するデータボリューム作ってみます。このデータボリュームの名前をmysql_dataとします。mysql_dataデータボリュームのリストは、コマンドで確認できます。mysql_dataでは、MySQLのコンテナにこのデータボリュームをマウントさせます。inspectで確認できます。...なお、データボリュームはcreateすることができますが、標準のlocalの場合、一度コンテナに紐付けられると、そのコンテナが破棄された時にデータボリュームも一緒に破棄されます。よって、データボリュームを作成するときは、busyboxなどのコンテナにわかりやすい名前で紐つけておいたほうが良いと思われます。busyboxデータボリュームのバックアップコンテナやイメージと違い、データボリュームは単体でバックアップする方法は提供されていないようでした。[plugin]で指定できます。バックアップは各プラグインで考えることなのだろうと思います。inspectの結果localと書かれていますが、実はSourceのディレクトリがマウントされているだけです。バックアップには、このディレクトリを直接処理しても良いと思います。登場するのは、他のコンテナにこのデータボリュームをマウントし、そこでバックアップをする方法です。なんだかなーとおもって、データバックアップ専用のコンテナ74th/volumebackupを作成しました。https://hub.docker.com/r/74th/volumerestore/以下のコマンドを実行すると、mysql_data-YYYYMMDDHHmmss.tar.gzというファイルにバックアップします。74th/volumerestore最後に、このバックアップが使えることを確認します。mysqlおわりdockerは正義!なツールを発表しようと思っていましたが、まだ未熟なツールなので、ちゃんと理解していなかったデータボリュームについてまとめました。Redmineを、GIt、SVNホスティング付...2015-09-06dockerをビルド環境として使うdockerコンテナにコンパイラなどを入れ、更にそのコンテナにビ...2015-08-08dockerコンテナをsystemdで管理させるdockerコンテナをサービス化しようと思って、systemdで自動起動...2015-07-17boot2dockerを止めて、Macでも-vでまともに使えるようにするboot2dockerをMacで使うと、boot2dockerの仮想マシンとMacのデ...2015-07-05dockerは求めていたものをすべて提供してくれたdockerは自分の中で、ここ数年で最も感動したプロダクトだ。»プロフィールid:j74thKubernetes、Python、VSCode、GCP、Goでごはん食べてる。インフラよりのアーキテクト。技術書典5にサークル参加して脱Shellscript、Pythonタスクランナー本を頒布しました月別アーカイブはてなブログをはじめよう!j74thさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。