docker run -v で指定してたディレクトリの指定を docker-compose.yml で行いたい
シェルスクリプトからdocker run
を呼び出して運用していたものを docker-compose
に移行したいのですがうまくできなくて困っています。
以下のような記述に対して、
docker run -v /home/user/docker/storage/var_lib_mysql:var/lib/mysql -d mysql1
このように置き換えてみたのですが、
version: '3'
services:
mysql1:
volumes:
- /home/user/docker/storage/var_lib_mysql:var/lib/mysql
volumes:
/home/user/docker/storage/var_lib_mysql:
以下のようなエラーになります。
ERROR: The Compose file './docker-compose.yml' is invalid because:
volumes value '/home/user/docker/storage/var_lib_mysql' does not match any of the regexes: u'^[a-zA-Z0-9._-]+$'
":"の前の部分には"/"が入れられないようだというのは分かります。
パスを指定してる箇所をvar_lib_mysql
だけに置き換えれば起動できるのですが、ホスト側のディレクトリを指定できてないので、dockerが作ったディレクトリがまうんとされてしまっています。
このマウント先のディレクトリを指定する方法を調べていたのですが、その部分を解説してくれている記事が見当たらず、結局よく分かりませんでした。
ご存知でしたら教えていただけますでしょうか。