У меня есть сценарий оболочки, такой как blow, и я хочу выполнить его в Dockerfle
и сделать автоматический выбор, используя echo -e
:
1. Which application you'd select:
1) nginx
2) squid
3) hproxy
Please enter a number (Default: 1): 2
You choose = squid
2. Please enter password for squid (Default: xxxxxxxx): yyyyyyyy
password = yyyyyyyy
3. Please enter a port for squid [1-65535] (Default: 443): 3128
port = 3128
4. ....
Это работает в оболочке докера:
echo -e "2\nmypass\n3128\n" | bash install-proxy.sh
, но не может работать в Dockerfile
:
RUN echo -e "2\nmypass\n\3128\n" | bash install-proxy.sh
похоже, что команда RUN
объединяет их в одну строку, так что первый выбор принял неправильный выбор, а последующие не приняли никакого выбора.
Весь сценарий здесь