如何在同级容器之间共享卷而不修改主机

时间:2019-05-10 20:07:01

标签: docker docker-run docker-in-docker dind

我有一个带有ssh键的图像:

WORKDIR /keys
COPY ssh ssh

然后我将此图像作为容器运行:

docker run -ti \
    --rm -v '/var/run/docker.sock:/var/run/docker.sock' --name test gitleaks-test

然后在入口点启动另一个容器:

ls -a /keys/ssh/values

docker run --rm --name=gitleaks \
   -v "/keys/ssh/values:/root/.ssh"  \
   zricethezav/gitleaks  \
   --ssh-key='/keys/ssh/values/bucket' \
   --repo "$line"

ls -a命令记录以下内容:

.  ..  bucket  bucket.pub

所以键在运行的容器中,但是我不认为--volume命令正在执行我认为的操作:

-v "/keys/ssh/values:/root/.ssh"  

我的猜测是,因为这些容器是作为兄弟运行的,所以-v命令是从主机转到内部容器,而不是从外部容器到内部容器,对吗?

请注意,如果我使用以下方法覆盖入口点:

docker run --rm --name = gitleaks \    -v“ /keys/ssh/values:/root/.ssh” \    --entrypoint ls \    zricethezav / gitleaks -a /root/.ssh

然后ls -a记录:

 . ..

0 个答案:

没有答案