Docker:我无法在运行时进行卷绑定
Docker: I'm not able to make working a volume binding at runtime
我正在以这种方式执行我的图像:
docker run -it --rm my_image -v ~/.ssh/id_rsa:/home/realtebo/.ssh/id_rsa:ro
所以我希望我的 rsa 私钥在执行时在运行时被复制。
这是我用作入口点的 shell 脚本
pwd
ls -la ~/.ssh
在运行时我得到了这个
/home/realtebo
total 12
drwxr-xr-x 2 realtebo realtebo 4096 Jan 19 08:20 .
drwxr-xr-x 3 realtebo realtebo 4096 Jan 19 08:37 ..
-rw-r--r-- 1 realtebo realtebo 393 Jan 19 08:20 known_hosts
所以工作目录和用户没问题。
note: known_hosts is created at build time
为什么我不能得到我期望的/home/realtebo/.ssh/id_rsa
?
我使用 docker inspect <container_name
进行了一些调试。我发现:
"HostConfig": {
"Binds": null,
....
但是有什么问题呢?
解决方案:交换 -v
标志和 image_name。
图像名称必须始终是最后一个参数(后跟可选的 cmd 以执行)
所以
docker run -it --rm my_image -v ~/.ssh/id_rsa:/home/realtebo/.ssh/id_rsa:ro
我需要这样执行:
docker run -it --rm v ~/.ssh/id_rsa:/home/realtebo/.ssh/id_rsa:ro my_image
我正在以这种方式执行我的图像:
docker run -it --rm my_image -v ~/.ssh/id_rsa:/home/realtebo/.ssh/id_rsa:ro
所以我希望我的 rsa 私钥在执行时在运行时被复制。
这是我用作入口点的 shell 脚本
pwd
ls -la ~/.ssh
在运行时我得到了这个
/home/realtebo
total 12
drwxr-xr-x 2 realtebo realtebo 4096 Jan 19 08:20 .
drwxr-xr-x 3 realtebo realtebo 4096 Jan 19 08:37 ..
-rw-r--r-- 1 realtebo realtebo 393 Jan 19 08:20 known_hosts
所以工作目录和用户没问题。
note: known_hosts is created at build time
为什么我不能得到我期望的/home/realtebo/.ssh/id_rsa
?
我使用 docker inspect <container_name
进行了一些调试。我发现:
"HostConfig": {
"Binds": null,
....
但是有什么问题呢?
解决方案:交换 -v
标志和 image_name。
图像名称必须始终是最后一个参数(后跟可选的 cmd 以执行)
所以
docker run -it --rm my_image -v ~/.ssh/id_rsa:/home/realtebo/.ssh/id_rsa:ro
我需要这样执行:
docker run -it --rm v ~/.ssh/id_rsa:/home/realtebo/.ssh/id_rsa:ro my_image