Dockerfile中的交互式命令 [英] Interactive command in Dockerfile

查看:567
本文介绍了Dockerfile中的交互式命令的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 docker build 命令和相应的 Dockerfile 自动创建开发Docker映像。我需要在 RUN 命令中运行的脚本之一希望用户单击以阅读其许可协议。因此有两个问题:

I'm trying to automate a creation of a development Docker image using docker build command with appropriate Dockerfile. One of the scripts that I need to run in a RUN command wants the user to click through and read their license agreement. Thus there are two questions:


  1. 所有 RUN 命令的输出在哪里在 Dockerfile 中?

  2. 与上述命令交互的解决方案是什么?现在, docker build 命令被卡住,要求用户无限循环输入。

  1. Where is the output of all the RUN commands in a Dockerfile?
  2. What solution is possible to interact with the aforementioned command? Right now the docker build command just gets stuck asking user for input in an infinite loop.


推荐答案

在构建过程中,将在终端中显示 RUN 命令的输出。 Docker的构建过程是完全非交互的,因此您必须找到一种自动接受条款的方式(几乎每个软件都允许这样做,请考虑 apt-get install -y ... )或使用一些shell向导将接受回显到流程或其他任何东西(期望也许?)。

The output of RUN commands is shown in your terminal during the build. The Docker build process is completely non-interactive, so you must find some way of either auto-accepting the terms (almost every piece of software allows this, think apt-get install -y...) or using some shell wizardry to echo the acceptance back to the process or whatever (Expect maybe?).

这篇关于Dockerfile中的交互式命令的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆