小编The*_*ark的帖子

如何确定在 docker 镜像中使用哪个包管理器

我正在尝试编写一个Dockerfile并需要安装wget在 docker 映像中。我不确定如何确定基本映像使用哪个发行版,或者使用哪个包管理器。Dockerfile现在对我来说失败的一个例子是

FROM openjdk:18-jdk
RUN apt-get update && apt-get install -y wget
#...
Run Code Online (Sandbox Code Playgroud)

与错误#5 0.334 /bin/sh: apt-get: command not found。如果我离开Dockerfileas

FROM openjdk:18-jdk
Run Code Online (Sandbox Code Playgroud)

然后使用构建它docker build -t test:latest .,然后使用 bash 将其输入docker run -it --rm --entrypoint "bash" test,我可以通过运行以下命令找到发行版:

bash-4.4# cat /proc/version
Linux version 5.10.104-linuxkit (root@buildkitsandbox) (gcc (Alpine 10.2.1_pre1) 10.2.1 20201203, GNU ld (GNU Binutils) 2.35.2) #1 SMP Thu Mar 17 17:08:06 UTC 2022
Run Code Online (Sandbox Code Playgroud)

这让我认为它正在运行 Alpine,我认为应该用作apk包管理器。但是,它似乎apk …

package-management docker

6
推荐指数
1
解决办法
2839
查看次数

标签 统计

docker ×1

package-management ×1