嗨,我正在尝试创建一个 docker 镜像,其中安装了 java 和 maven,并打开了端口 8090。
容器运行后,我会将我的 spring 启动项目复制到容器中,然后从容器中运行它。
为此,我尝试创建 docker 文件。我能够在本地成功构建 docker 映像。
当我尝试用它创建容器时。它没有提起容器。我已经浪费了我的两天时间。
我使用了以下 docker 文件。
FROM ubuntu:16.04
ENV DEBIAN_FRONTEND noninteractive
ENV VERSION 8
ENV UPDATE 152
ENV BUILD 16
ENV SIG aa0333dd3019491ca4f6ddbe78cdb6d0
ENV JAVA_HOME /usr/lib/jvm/java-${VERSION}-oracle
# install jre
RUN apt-get update -qq && \
apt-get upgrade -qqy --no-install-recommends && \
apt-get install curl unzip bzip2 -qqy && \
mkdir -p "${JAVA_HOME}" && \
curl --silent --location --insecure --junk-session-cookies --retry 3 \
--header "Cookie: oraclelicense=accept-securebackup-cookie;" \
http://download.oracle.com/otn-pub/java/jdk/"${VERSION}"u"${UPDATE}"-b"${BUILD}"/"${SIG}"/jre-"${VERSION}"u"${UPDATE}"-linux-x64.tar.gz \
| tar -xzC "${JAVA_HOME}" --strip-components=1 && \
apt-get remove --purge --auto-remove -y curl unzip bzip2 && \
apt-get autoclean && apt-get --purge -y autoremove && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN update-alternatives --install "/usr/bin/java" "java" "${JAVA_HOME}/bin/java" 1 && \
update-alternatives --install "/usr/bin/javaws" "javaws" "${JAVA_HOME}/bin/javaws" 1 && \
update-alternatives --set java "${JAVA_HOME}/bin/java" && \
update-alternatives --set javaws "${JAVA_HOME}/bin/javaws"
EXPOSE 8090
ENTRYPOINT ["/bin/bash"]
注意:当我从该图像创建容器时,我希望容器处于运行状态。
docker hub 中是否有任何预定义的 Docker Image 可以让我的工作变得简单?
如果你们给我一个 docker 文件来回答我的问题,我会很高兴。
我知道只有 stackoverflow 可以解决我的问题。提前致谢。
问题出在端点上。必须在端点启动服务。一旦此服务(进程)完成,容器就会退出。
在我的例子中,我在入口点调用了一个简单的 spring boot 应用程序,它监听端口 8090。
经过2天多的挣扎,学习效果很好。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句