自由 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/
行,然后它会按预期工作。
当我尝试 运行 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/
行,然后它会按预期工作。