Как разделить объем между соседними контейнерами без изменения хоста - PullRequest
0 голосов
/ 10 мая 2019

У меня есть изображение с ключами 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 журналы:

 . ..
...