java - 如何在基于java的docker镜像中安装包管理器

标签 java spring-boot docker apt netcat

我正在使用 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/

相关文章:

java - Java 运行时环境检测到 fatal error

java - 如何读取用于收集统计信息(后期)处理的输出文件

java - 自定义对象的 ListView 上出现不兼容类型错误

java - 当您从操作中抛出异常时,Spring 状态机会抛出 NullPointerException

sql - JPA batch_size 属性不适用于 native 查询

docker - 如何从容器内部运行podman?

spring-boot - 如何防止 Redis 写入匿名用户 session

spring-boot - Kubernetes nginx 重定向到用户指定的 url

node.js - 在 Docker 中构建时出现 node-sass 错误

docker - 如何在 Kubernetes cronjob 中正确配置 HostIPC 和 HostPID?