这是我的问题。
我需要从容器内的卷读取数据。我没有在docker文件中使用ADD命令直接在容器中复制这些数据,而是需要从数据占位符中查找这些数据,即一个容纳数据的容器。
所以,我创建了这个数据容器,
docker run -d -v / var / lib / ABC --name ABC_datastore busybox true。
根据我的理解,这应该创建一个容器ABC_datastore,它将包含我运行此命令的主机目录/ var / lib / ABC中的数据?我错了吗?
所以如果我的理解是正确的,我可以在我的主容器中使用这个容器, docker run -i -t --volumes-来自ABC_datastore --name =" ABC_ins" -d ABC_img
这应该使用正确的值填充我的ABC-ins中的/ var / lib / ABC。但它没有发生。我的ABC-ins中的文件夹/ var / lib / ABC是空的。
我还尝试使用填充数据, docker run -d -v / var / lib / ABC --name ABC_datastore busybox true; tar -c / var / lib / ABC | docker run -a stdin -i --volumes-来自ABC_datastore busybox tar -xC / var / lib / ABC 这里也没有运气。
任何帮助将不胜感激。我的最终目标是创建一个数据容器,其中包含/ var / lib / ABC中的实际数据,可以在给定路径中的容器内使用。
答案 0 :(得分:2)
docker run -d -v / var / lib / ABC --name ABC_datastore busybox true。
根据我的理解,这应该创建一个容器ABC_datastore,它将包含我运行此命令的主机目录/ var / lib / ABC中的数据?我错了吗?
您需要使用格式-v /path/to/source:/path/to/destination
告诉docker您要在容器中装入卷的位置。
尝试:
docker run -d -v /var/lib/ABC:/var/lib/ABC --name ABC_datastore busybox true