![](/img/trans.png)
[英]Docker : directory mapped in volume is not created with same user of host
[英]How to make docker volume locations on the host relative to working directory?
我有一個這樣的工作樹:
├── docker-compose.yml
├── folder1
│ ├── docker-compose.yml
│ └── volume1
│ └── source
└── volume
└── source
根 docker-compose.yml:
version: "3.4"
services:
service:
image: hello-world
volumes:
- ./volume/source:/volume/destination
command: sleep 180
folder1/docker-compose.yml:
version: "3.4"
services:
service1:
image: hello-world
volumes:
- ${PWD}/volume1/source:/volume1/destination
command:
- sleep 180
當我從根目錄docker-compose -f docker-compose.yml -f folder1/docker-compose.yml config
時,我得到
services:
service:
command: sleep 180
image: hello-world
volumes:
- /home/user/repos/learn/dockerl-compose/volume/source:/volume/destination:rw
service1:
command:
- sleep 180
image: hello-world
volumes:
- /home/user/repos/learn/dockerl-compose/volume1/source:/volume1/destination:rw
version: '3.4'
如何使主機上綁定安裝的位置相對於執行命令的位置?
你應該先寫一個這樣的腳本:
#!/bin/bash
SCRIPT_PATH=$(readlink -f $(dirname $0))
SCRIPT_PATH=${SCRIPT_PATH} docker-compose <YOUR_OWN_ARGUMENTS>
然后,在您的YAML中,您應該將${PWD}
替換為${SCRIPT_PATH}
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.