Docker构建挂起。我怎么看发生了什么事? [英] Docker build hangs. How can I see what is going on?

查看:103
本文介绍了Docker构建挂起。我怎么看发生了什么事?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

此Dockerfile在下载完成后挂起:

 从Ubuntu:18.04 
MAINTAINER Dean Schulze

ENV JS_CE_VERSION 7.1.0
ENV JS_CE_HOME / opt / jasperreports-server-cp-$ {JS_CE_VERSION}
ENV路径$ PATH:$ {JS_CE_HOME}

运行apt-get update&& apt-get install -y wget \
&& wget --progress = bar:force:noscroll -O TIB_js-jrs-cp _ $ {JS_CE_VERSION} _linux_x86_64.run https://sourceforge.net/projects/jasperserver/files/JasperServer/JasperReports%20Server%20Community%20Edition%20$ {JS_CE_VERSION} / TIB_js-jrs-cp _ $ {JS_CE_VERSION} _linux_x86_64.run \
& chmod a + x TIB_js-jrs-cp _ $ {JS_CE_VERSION} _linux_x86_64.run \
&& /TIB_js-jrs-cp_${JS_CE_VERSION}_linux_x86_64.run-无人值守模式--jasperLicense接受的是--postgres_password Postgres1-前缀$ {JS_CE_HOME} \
&& rm TIB_js-jrs-cp _ $ {JS_CE_VERSION} _linux_x86_64.run \
&& rm -rf $ {JS_CE_HOME} / apache-ant $ {JS_CE_HOME} / buildomatic \
$ {JS_CE_HOME} / docs $ {JS_CE_HOME} / samples $ {JS_CE_HOME} / scripts \
&& ;易于清洁

EXPOS 8080

CMD ctlscript.sh start&& tail -f / dev / null

输出的最后几行是

 解析superb-dca2.dl.sourceforge.net(superb-dca2.dl.sourceforge.net)... 209.61.193.20 
连接到superb-dca2.dl.sourceforge.net(superb-dca2.dl.sourceforge.net)| 209.61.193.20 |:443 ...已连接。
HTTP请求已发送,正在等待响应... 200 OK
长度:343517555(328M)[application / x-makeself]
保存到:'TIB_js-jrs-cp_7.1.0_linux_x86_64.run '

TIB_js-jrs-cp_7.1.0 100%[====================] 327.60M 1.60MB / s在3m 52s

2018-07-28 03:15:28(1.41 MB / s)-'TIB_js-jrs-cp_7.1.0_linux_x86_64.run'已保存[343517555/343517555]

如何诊断像这样挂起的Docker构建?


编辑


以下是请求的输出:

  $ docker image history d5d47e51eafc 
通过大小注释创建的图像
d5d47e51eafc 23分钟前/ bin / sh -c#(nop)ENV PATH = / usr / local / sbin:…0B
831a3a551fa7 23分钟前/ bin / sh -c#(nop)ENV JS_CE_HOME = / opt / jaspe…0B
e8361426e492 23分钟前/ bin / sh -c#(nop)ENV JS_CE_VERSION = 6.3.0 0B
7af364f52b1b 23分钟前/ bin / sh -c#(nop)MAINTAINER JS Minet 0B
735f80812f90 30小时前/ bin / sh -c#(nop)CMD [ / bin / bash] 0B
< missing> 30小时前/ bin / sh -c mkdir -p / run / systemd&& echo'do…7B
< missing> 30小时前/ bin / sh -c sed -i s / ^#\s * \(deb。* universe\)$…2.76kB
< missing> 30小时前/ bin / sh -c rm -rf / var / lib / apt / lists / * 0B
< missing> 30小时前/ bin / sh -c设置-xe&回声#!/ bin / sh> /…745B
< missing> 30小时前/ bin / sh -c#(nop)添加文件:4bb62bb0587406855…83.5MB

它看起来这些行是相反的,最后执行的是 ENV PATH 。下一行是 RUN 行,该行具有多个由&& 分隔的命令。



这是对DockerHub上的Dockerfile的修改。我更改了ubuntu版本和正在安装的应用程序的版本。



我应该提交错误报告吗?

解决方案

我可以通过回滚到 ubuntu 16.04 来工作。 18.04 中必须进行一些更改,导致此Dockerfile失败,或者 ubuntu 18.04 映像省略了某些内容。 / p>

This Dockerfile hangs after the download has completed:

FROM ubuntu:18.04
MAINTAINER Dean Schulze

ENV JS_CE_VERSION 7.1.0
ENV JS_CE_HOME /opt/jasperreports-server-cp-${JS_CE_VERSION}
ENV PATH $PATH:${JS_CE_HOME}

RUN apt-get update && apt-get install -y wget \
&& wget --progress=bar:force:noscroll -O TIB_js-jrs-cp_${JS_CE_VERSION}_linux_x86_64.run https://sourceforge.net/projects/jasperserver/files/JasperServer/JasperReports%20Server%20Community%20Edition%20${JS_CE_VERSION}/TIB_js-jrs-cp_${JS_CE_VERSION}_linux_x86_64.run \
&& chmod a+x TIB_js-jrs-cp_${JS_CE_VERSION}_linux_x86_64.run \
&& /TIB_js-jrs-cp_${JS_CE_VERSION}_linux_x86_64.run --mode unattended --jasperLicenseAccepted yes --postgres_password Postgres1 --prefix ${JS_CE_HOME} \
&& rm TIB_js-jrs-cp_${JS_CE_VERSION}_linux_x86_64.run \
&& rm -rf ${JS_CE_HOME}/apache-ant ${JS_CE_HOME}/buildomatic \
${JS_CE_HOME}/docs ${JS_CE_HOME}/samples ${JS_CE_HOME}/scripts \
&& apt-get clean

EXPOSE 8080

CMD ctlscript.sh start && tail -f /dev/null

The last few lines of output are

Resolving superb-dca2.dl.sourceforge.net (superb-dca2.dl.sourceforge.net)... 209.61.193.20
Connecting to superb-dca2.dl.sourceforge.net (superb-dca2.dl.sourceforge.net)|209.61.193.20|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 343517555 (328M) [application/x-makeself]
Saving to: 'TIB_js-jrs-cp_7.1.0_linux_x86_64.run'

TIB_js-jrs-cp_7.1.0 100%[===================>] 327.60M  1.60MB/s    in 3m 52s  

2018-07-28 03:15:28 (1.41 MB/s) - 'TIB_js-jrs-cp_7.1.0_linux_x86_64.run' saved [343517555/343517555]

How do I diagnose a docker build that hangs like this?

Edit

Here's the requested output:

$ docker image history d5d47e51eafc
IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
d5d47e51eafc        23 minutes ago      /bin/sh -c #(nop)  ENV PATH=/usr/local/sbin:…   0B                  
831a3a551fa7        23 minutes ago      /bin/sh -c #(nop)  ENV JS_CE_HOME=/opt/jaspe…   0B                  
e8361426e492        23 minutes ago      /bin/sh -c #(nop)  ENV JS_CE_VERSION=6.3.0      0B                  
7af364f52b1b        23 minutes ago      /bin/sh -c #(nop)  MAINTAINER JS Minet          0B                  
735f80812f90        30 hours ago        /bin/sh -c #(nop)  CMD ["/bin/bash"]            0B                  
<missing>           30 hours ago        /bin/sh -c mkdir -p /run/systemd && echo 'do…   7B                  
<missing>           30 hours ago        /bin/sh -c sed -i 's/^#\s*\(deb.*universe\)$…   2.76kB              
<missing>           30 hours ago        /bin/sh -c rm -rf /var/lib/apt/lists/*          0B                  
<missing>           30 hours ago        /bin/sh -c set -xe   && echo '#!/bin/sh' > /…   745B                
<missing>           30 hours ago        /bin/sh -c #(nop) ADD file:4bb62bb0587406855…   83.5MB              

It looks like the lines are in reverse order and the last one executed is the ENV PATH. The next line would be the RUN line which has multiple commands separated by &&.

This is a modification of a Dockerfile on DockerHub. I changed ubuntu versions and the version of the app being installed. That shouldn't have broken anything.

Should I file a bug report?

解决方案

I got this to work by rolling back to ubuntu 16.04. There must be some change in 18.04 that causes this Dockerfile to fail, or maybe the ubuntu 18.04 image omitted something.

这篇关于Docker构建挂起。我怎么看发生了什么事?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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