自由 Docker 图片不是 运行

Liberty Docker Image is not running

当我尝试 运行 docker 图像时出现此错误:

C:\Program Files\Docker Toolbox\docker.exe: Error response from 
daemon: invalid header field value "oci runtime error: 
container_linux.go:247: starting container process caused 
\"exec: \\"/opt/ibm/docker/docker-server\\": 
stat /opt/ibm/docker/docker-server: no such file or 
directory\"\n".**

我已经在 Windows-10 上安装了 Docker 以及 Docker Tool Box。我创建了一个小型 Spring Web 应用程序,我想 运行 使用 Liberty 配置文件来 运行 这个应用程序。

我使用下面的 docker 文件构建了 docker 图像。

FROM ibmjava:8-jre


RUN apt-get update \
        && apt-get install -y --no-install-recommends unzip \
        && rm -rf /var/lib/apt/lists/*

# Install WebSphere Liberty
ENV LIBERTY_VERSION 16.0.0_04


ARG LIBERTY_URL

ARG DOWNLOAD_OPTIONS=""

RUN LIBERTY_URL=${LIBERTY_URL:-$(wget -q -O - https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/wasdev/downloads/wlp/index.yml  | grep $LIBERTY_VERSION -A 6 | sed -n 's/\s*kernel:\s//p' | tr -d '\r' )}  \
        && wget $DOWNLOAD_OPTIONS $LIBERTY_URL -U UA-IBM-WebSphere-Liberty-Docker -O /tmp/wlp.zip \
        && unzip -q /tmp/wlp.zip -d /opt/ibm \
        && rm /tmp/wlp.zip

ENV PATH=/opt/ibm/wlp/bin:$PATH

# Set Path Shortcuts
ENV LOG_DIR=/logs \
        WLP_OUTPUT_DIR=/opt/ibm/wlp/output

RUN mkdir /logs \
        && ln -s $WLP_OUTPUT_DIR/defaultServer /output \
        && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config

# Configure WebSphere Liberty

RUN /opt/ibm/wlp/bin/server create \
        && rm -rf $WLP_OUTPUT_DIR/.classCache /output/workarea

#COPY docker-server /opt/ibm/docker/

EXPOSE 9080 9443

CMD ["/opt/ibm/docker/docker-server", "run", "defaultServer"]

您需要取消注释 COPY docker-server /opt/ibm/docker/ 行,然后它会按预期工作。