Ole*_*nko 7 docker docker-compose docker-volume docker-for-windows
我docker-compose.yml喜欢这个:
version: '3'
services:
mysql:
image: mysql
volumes:
- data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=$ROOT_PASSWORD
volumes:
data:
Run Code Online (Sandbox Code Playgroud)
我的挂载点看起来像:/var/lib/docker/volumes/some_app/_data我想从该挂载点访问数据,我不知道如何在Windows机器上执行此操作.也许我可以创建一些额外的容器,可以将数据从docker虚拟机传递到我的目录?
当我正在安装这样的文件夹时:
volumes:
- ./data:/var/lib/mysql
Run Code Online (Sandbox Code Playgroud)
使用我的本地目录 - 由于权限问题我没有成功.并读到"正确的方式"正在使用docker卷.
UPD:MySQL容器就是一个例子.我想对我的代码库使用这种行为并使用docker foe本地开发.
Rob*_*ert 11
对于Windows下的Linux容器,docker 实际上在Linux虚拟机上运行,因此您的named卷是该VM中的本地目录到容器中的目录的映射.
所以你得到的/var/lib/docker/volumes/some_app/_data是那个VM里面的一个目录.要检查它,您可以:
docker run --rm -it -v /:/vm-root alpine:edge ls -l /vm-root/var/lib/docker/volumes/some_app/_data
total 188476
-rw-r----- 1 999 ping 56 Jun 4 04:49 auto.cnf
-rw------- 1 999 ping 1675 Jun 4 04:49 ca-key.pem
-rw-r--r-- 1 999 ping 1074 Jun 4 04:49 ca.pem
-rw-r--r-- 1 999 ping 1078 Jun 4 04:49 client-cert.pem
-rw------- 1 999 ping 1679 Jun 4 04:49 client-key.pem
-rw-r----- 1 999 ping 1321 Jun 4 04:50 ib_buffer_pool
-rw-r----- 1 999 ping 50331648 Jun 4 04:50 ib_logfile0
-rw-r----- 1 999 ping 50331648 Jun 4 04:49 ib_logfile1
-rw-r----- 1 999 ping 79691776 Jun 4 04:50 ibdata1
-rw-r----- 1 999 ping 12582912 Jun 4 04:50 ibtmp1
drwxr-x--- 2 999 ping 4096 Jun 4 04:49 mysql
drwxr-x--- 2 999 ping 4096 Jun 4 04:49 performance_schema
-rw------- 1 999 ping 1679 Jun 4 04:49 private_key.pem
-rw-r--r-- 1 999 ping 451 Jun 4 04:49 public_key.pem
-rw-r--r-- 1 999 ping 1078 Jun 4 04:49 server-cert.pem
-rw------- 1 999 ping 1675 Jun 4 04:49 server-key.pem
drwxr-x--- 2 999 ping 12288 Jun 4 04:49 sys
Run Code Online (Sandbox Code Playgroud)
这是运行一个辅助容器,它已将该VM /的孔根文件系统安装到容器目录中/vm-root.
要获取一些文件在后台运行带有一些命令的容器(tail -f /dev/null在我的例子中),那么你可以使用docker cp:
docker run --name volume-holder -d -it -v /:/vm-root alpine:edge tail -f /dev/null
docker cp volume-holder:/vm-root/var/lib/docker/volumes/volumes_data/_data/public_key.pem .
Run Code Online (Sandbox Code Playgroud)
如果您想要一个透明的SSH到该VM,从2017年6月开始,它似乎尚不支持.这里的码头工作人员说.
| 归档时间: |
|
| 查看次数: |
5702 次 |
| 最近记录: |