是否有可能暂停Docker镜像构build?
构build图像时,我有时会收到警告或非致命错误。 例如,如果我编译Docker镜像中的某个程序,但某些可选库缺失,则会打印一条警告。
但是,如果图像不断build立,则消息难以检索,因为terminal一直在向下滚动,并且在某个时刻它太高而无法读取。
是否有可能暂停一个Docker镜像或检索这些错误信息,而不是输出到一个文件(这可能会丢失terminal的颜色)?
是否有可能暂停Docker镜像
不,你不能暂停docker build
命令。
您可以试试Scroll Lock键,但取决于您的terminal可能会失败。
您可以将docker build
命令的结果传递给less -R
:
docker build -t test . | less -R
一旦build成,你可以使用箭头键上下,使用/
searchtesting等 。
-R
是保持颜色
-r -R .... --raw-control-chars --RAW-CONTROL- Output "raw" control characters.
你也可以把输出logging到一个文件中(我知道你明确表示你不需要这个解决scheme,但是可以适合其他的) :
docker build -t test . | tee build.log
虽然我明白你宁愿不喜欢退出代码被传输到文件,我可以向你保证着色不会丢失。
一个简单的代码,我用来传递错误,如信息和致命的,
docker build $(pwd) 2>> error
将传输任何错误,阻止它将图像构build成错误文件。
在文件的cat
,错误的颜色代码仍然存在。 通常我的目标是使用这些错误,以build立一个可以从这些错误构build自己的docker图像。
我明白,如果你想暂停docker构build,你可以使用^c
(control c)取消它,这将终止窗口中的活动进程。 当然,你将无法取消暂停。
我得到这些解决scheme不是你在找什么,但它是我目前唯一的方式,以便做你想做的事情。