我正在尝试创建一个基于 Ubuntu 或 Debian 的小型 Dockerfile。这是 Dockerfile:
FROM debian:latest
RUN "apt update"
当我尝试构建命令时,出现此错误:
l@Notebook-Lab:~/progetti/dns_analyzer$ docker build -t my_dns .
Sending build context to Docker daemon 15.36kB
Step 1/2 : FROM debian:latest
---> 8d31923452f8
Step 2/2 : RUN "apt update"
---> Running in 3a0ee422e849
/bin/sh: 1: apt update: not found
The command '/bin/sh -c "apt update"' returned a non-zero code: 127
当我从容器内的 bash 终端启动命令“apt update”时,一切正常。
答案1
去掉引号(您尝试运行命令apt update
而不是apt
带有参数的命令update
),切换到apt-get
(apt 没有稳定的脚本界面),并且您还应该将任何apt-get update
命令与您的apt-get install
命令链接起来以消除陈旧缓存的风险:
FROM debian:latest
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends \
git \
vim
有关更多详细信息,请参阅最佳实践文档:https://docs.docker.com/develop/develop-images/#run