Я хочу передать параметр в докер CMD. Например, если содержимое Dockerfile
являютсяАргументы командной строки для Docker CMD
FROM ubuntu:15.04
CMD ["/bin/bash", "-c", "cat", "$1"]
Тогда я хочу, чтобы запустить следующим образом:
docker build -t cat_a_file .
docker run -v `pwd`:/data cat_a_file /data/Dockerfile
Я хотел содержимое Dockerfile
быть выведен на экран. Но вместо этого, Docker считает, что /data/Dockerfile
скрипт, который должен переопределить CMD
, давая ошибку
Error response from daemon: Cannot start container 7cfca4:
[8] System error: exec: "/data/Dockerfile": permission denied
Как это можно избежать?
Я только что протестировал его, и он действительно работает. Спасибо. – user14717
Просто чтобы мы могли создавать более сложные скрипты, каков правильный способ использования аргумента '$ 1'? – user14717
Вероятно, лучше всего использовать переменные среды в этих случаях. Вы не можете использовать '$ 1' и т. Д. –