ディレクトリをホストと共有したいのです~/mydir
が、Docker コンテナ ディレクトリをホスト ファイルに置き換えたくありません。ので、私は持っていますdocker-compose.yml
version: '2'
services:
app:
container_name: mono
build: .
volumes:
# save .composer files on host to keep cache warmed up
- '/srv/mono/mydir:/root/mydir'
command: sleep infinity
とDockerfile
#/bin/bash
FROM php:5.6
RUN mkdir /root/mydir && echo '{}' > /root/mydir/myfile.json
VOLUME /root/mydir
ディレクトリ/srv/mono/mydir
が空です。ホストディレクトリに置き換えられました。それは明確だ。
しかし、元のファイルを保持する方法は?
たとえば、MySQL Percona コンテナーで機能します。
version: '2'
services:
percona-56:
container_name: percona-56
image: percona/percona-server:5.6
volumes:
- /srv/mysql/percona-56:/var/lib/mysql
environment:
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
コンテナーの元のファイルがあります。
$ ll /srv/mysql/percona-56
total 176220
auto.cnf
error.log
ibdata1
ib_logfile0
ib_logfile1
init.ok
mysql
performance_schema
Percona Dockerfileを調べてみましたが、ボリューム共有に関連するものは見つかりませんでした。
$ docker --version
Docker version 1.12.3, build 6b644ec