ボリューム位置を知りたくなった経緯
Growiのバージョンアップをしたらdocker-compose upできない
原因はバージョンをあげる前のelasticsearchコンテナが作ったnodeの0番。恐らく以前のnodeが残っていてかつ、Dockerfileの設定では1つのnodeしか作られないようになっているにも関わらず、バージョンアップしたGrowiをdocker-compose upする時に新たなnodeを立てようとしていたからだと思われる。
解決策
それなら、ボリュームされたこいつを削除してやればいいじゃん!!
どこだァ!!ボリューム!!
volumes:
- es_data:/usr/share/elasticsearch/data
これではホストのどこにボリュームされてるか分からねぇぞぉ!!
$ docker volume ls
こうしてあげると、
local growi_es_data
local growi_es_plugins
local growi_growi_data
local growi_mongo_configdb
local growi_mongo_db
こんな感じで、ボリュームされているボリューム名がリストされます。今回はelasticsearchに用があるので、growi_es_dataちゃんにご同行願いましょう。ふへへへへへ・・・
$ docker volume inspect growi_es_data
こうしてあげると、
[
{
"CreatedAt": "2019-02-28T09:37:54Z",
"Driver": "local",
"Labels": {
"com.docker.compose.project": "growi",
"com.docker.compose.volume": "es_data"
},
"Mountpoint": "/var/lib/docker/volumes/growi_es_data/_data",
"Name": "growi_es_data",
"Options": null,
"Scope": "local"
}
]
詳しいボリュームの内容が分かります。見えちゃってるゼェ〜、君の全部がヨォ〜・・・ヘッヘッヘ・・・
ディレクトリを削除・・・と思いきや・・・
当初は、これで分かったボリューム先まで行ってそのパスの先にある_dataを丸ごと削除してあげれば問題ないと思っていたんですが、
$ docker volume rm growi_es_data
上記のように、volume名を指定してそこを吹っ飛ばすことができるコマンドをvolume lsなどを調べていた時に見つけたので、これで削除しました。
解決!
この作業の後に、docker-compose upしたら、ちゃんと動いてくれました。