dockerでRedmine
Windows ノートPCを新調したので、いろいろ遊んでみている。
その一環として、新しい技術に消極的な弊社内でも最近dockerが使われだしているので、勉強がてら入れてみた。で、Redmineで今後のアレコレを管理したいなーと思っていたので、Redmineをいれてみた。そのあたりメモ。
解説サイトから見ていっていろいろ試したが、docker-compose.yml書いてこれを使うのが簡単そう。公式?でもそんな書かれ方してる。
で、やってみるとWindowsからのアクセスがうまくいかず。
うーん、うーんと悩んだけど、VirtualBoxでポートフォワーディング設定が必要でした。適当にポートふったらいけたよ。
やったね!・・・と思ったが大間違い。データの永続化が必要でした。これを怠ったために、入力した諸々がすべて消し飛ぶことに・・・。
データの永続化には一般的にはVolumeやらデータコンテナというものを使うみたい。Volumeは、Windowsのファイルシステム上をコンテナのデータの出力先にできるという便利機能なのだけど、直接Windowsのファイルシステム上を指定すると、postgresqlでinitdbでPermissionエラーが出る。
いろいろ調べてみると、rootかUID=1000で動作しないとエラーではじかれるようだ。postgresql,Redmineの中身とかdockerの動きを十分理解できていれば、立ち上げ時のオプションを追加して対策できそうだが、現時点ではよくわからんし、そこまでがんばってもなぁというところで、運用でカバーすることにした。
boot2dockerのファイルシステムが再起動で消えてしまうようなので、都度バックアップを取ることにした。ひとまずDB側のみ。
まずバックアップ。sshでログインして以下のコマンドを実行。
sudo tar -cf backup_YYYYMMDD.tar /srv/docker/redmine/postgresql