我正在使用 SpringBoot 和 Java 以及 Docker 开发一个应用程序。
我要安装Netcat在我的应用程序中,以便我可以在 Spring 应用程序启动之前检查特定容器是否已启动。
我已经尝试过
RUN apt-get update && apt-get -y install netcat && apt-get clean
但它说找不到 apt-get。
我不确定如何在基于 java 的应用程序中安装任何包管理器。
或者还有其他我可以安装 net-cat 的吗?
下面是我的Dockerfile
FROM openjdk:8
RUN apt-get update && apt-get -y install netcat && apt-get clean
ADD target/student.jar student.jar
EXPOSE 2018
ENTRYPOINT ["java","-jar","student.jar"]
最佳答案
apt-get
是基于 Debian 的 Linux 发行版(包括 Ubuntu 和其他发行版)的包管理器。
尝试apk add
。
此外,如果您在 Dockerfile
中使用包管理器,显式指定 Linux 发行版被认为是一个很好的做法。在您的情况下,您可以使用 openjdk:8-jdk-stretch
变体或任何其他指定发行版的变体。
关于java - 如何在基于java的docker镜像中安装包管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54864841/