我所能找到的只是Docker Hub上Ubuntu Desktop的官方Docker映像。没有适用于Ubuntu Server的服务器吗?
这是否意味着我必须使用创建自己的基本映像scratch
?
我所能找到的只是Docker Hub上Ubuntu Desktop的官方Docker映像。没有适用于Ubuntu Server的服务器吗?
这是否意味着我必须使用创建自己的基本映像scratch
?
Answers:
我所能找到的只是Docker Hub上Ubuntu Desktop的官方Docker映像。
该页面无处显示这是Ubuntu 桌面映像。无论如何,这没有任何意义,因为您(通常)不在Docker容器中运行桌面环境。
您可以测试它,首先通过以下方式在Ubuntu容器中运行bash:
docker run -it ubuntu /bin/bash
-i
,--interactive
即使未连接STDIN也要保持打开状态
-t
,--tty
分配一个伪TTY
然后运行以下命令以检查是否ubuntu-desktop
已安装:
dpkg -l ubuntu-desktop
问题与Ubuntu Server有关,但所有答案和讨论均与Ubuntu Desktop有关。因此,我会回答这两个问题,但首先要解决Ubuntu Desktop。最后,(很可能不建议使用临时容器,并且大多数容器应按照Docker的最佳做法临时使用,但是,有例外。)您可以在容器上安装Ubuntu Desktop和Ubuntu Server并运行它。
注意:--rm
如果只进行试验,则可以通过在容器运行后自动删除容器来添加该标志,以防止主机存储膨胀。
docker run --rm -it ubuntu
这是一个很大的容器!〜1.5Gb
如果您运行:
docker run -it ubuntu
然后,在容器中:
> apt-get update && apt-get install -y ubuntu-desktop
您将有效下载Ubuntu桌面
可以创建一个Dockerfile:
FROM ubuntu:16.04
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y ubuntu-desktop
然后构建它:
docker build -t ubuntu-desktop .
并运行它:
docker run -it ubuntu-desktop
docker run -it ubuntu
从集装箱码头:
apt-get update && apt-get install -y ubuntu-server
FROM ubuntu:16.04
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y ubuntu-server
建立它:
docker build -t ubuntu-server .
运行:
docker run -it ubuntu-server
docker run -it ubuntu
集装箱码头:
apt-get update && apt-get install -y ubuntu-server ubuntu-desktop
FROM ubuntu:16.04
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y ubuntu-server ubuntu-desktop
建立它:
docker build -t ubuntu-server-desktop .
运行:
docker run -it ubuntu-server-desktop.
要使用Docker运行特定的Ubuntu版本,请运行以下命令:
docker run -it ubuntu:16.04 /bin/bash
版本号是16.04。如果您跳过版本号,将从存储库中选择最新的映像。您无需获取整个Dockerfile并从头开始创建它。