Официальный образ Docker для Ubuntu Server?

19

Все, что я мог найти, это официальный образ Docker для Ubuntu Desktop на Docker Hub. Разве нет ни одного для Ubuntu Server?

Означает ли это, что я должен был бы создать свой собственный базовый образ, используяscratch ?

это я
источник
@markkirby Разве Ubuntu Server не является урезанной версией Ubuntu Desktop и оптимизирован для сервера? Если да, то вот почему. Я не понимаю, что вы пытаетесь сказать.
its_me
Проверьте мой ответ - я установил контейнер сервера Ubuntu :) это просто
NonCreature0714

Ответы:

9

Все, что я мог найти, это официальный образ Docker для Ubuntu Desktop на Docker Hub.

Нигде на этой странице не написано, что это образ Ubuntu Desktop . В любом случае, это не имеет смысла, потому что вы (как правило) не запускаете среду рабочего стола в контейнере Docker.

Андреас Вайтен
источник
Согласен, это были мои мысли, ОП предположил, что это для настольных ПК, но нигде не говорит об этом.
Марк Кирби
3
Андреас и @markkirby - Да, теперь это кажется очевидным; не приходило мне в голову раньше. Я думал , что это распределение рабочего стола на основе описания, «Что такое Ubuntu - Ubuntu является Debian на базе операционной системы Linux, с Unity в качестве среды рабочего стола по умолчанию. »
its_me
1
@its_me Не беспокойтесь об этом, вы должны увидеть некоторые нелепые вопросы, которые я задавал в прошлом, в то время, когда они кажутся хорошими, но мы все делаем ошибки :)
Марк Кирби
14

Вы можете проверить это, сначала запустив bash в контейнере Ubuntu:

docker run -it ubuntu /bin/bash

-i, --interactive Keep STDIN открыть , даже если не прилагается

-t, --tty Выделяют псевдо-TTY

Затем выполните следующую команду, чтобы проверить, ubuntu-desktopустановлена ли она:

dpkg -l ubuntu-desktop
Ghanbari
источник
1
Это настоящий ответ. И подтвердил, что ubuntu-desktop не установлен в официальном образе Docker.
wisbucky
Я запустил его на своем личном рабочем столе Ubuntu. Результат: dpkg-query: не найдено пакетов, соответствующих ubuntu-desktop; P
Вальдемар Восински
13

Вопрос касался Ubuntu Server, но все ответы и обсуждения касались Ubuntu Desktop. Поэтому я отвечу на оба вопроса, но сначала обращайтесь к Ubuntu Desktop. Наконец, (и, вероятно, не рекомендуется для эфемерного контейнера , и большинство контейнеров должны быть эфемерными в соответствии с лучшими практиками Докера , но, эй, есть исключения.) Вы можете установить Ubuntu Desktop и Ubuntu Server на контейнер и запустить его.


ПРИМЕЧАНИЕ. Вы можете добавить--rmфлаг, чтобы не допустить вздутие хранилища вашего хоста, автоматически удаляя контейнеры после их запуска, если вы только экспериментируете с ними.

docker run --rm -it ubuntu

Ubuntu Desktop Container

Бегущий контейнер

Это довольно большой контейнер! ~ 1,5 Гб

Если вы запускаете:

docker run -it ubuntu

Затем в контейнере:

> apt-get update && apt-get install -y ubuntu-desktop

Вы эффективно загрузите Ubuntu Desktop

Dockerfile для рабочего стола 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

Контейнер Ubuntu Server

Бегущий контейнер

docker run -it ubuntu

Из контейнерного терминала:

apt-get update && apt-get install -y ubuntu-server

Dockerfile для сервера Ubuntu

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

Ubuntu Desktop и серверный контейнер

Бегущий контейнер:

docker run -it ubuntu

Контейнерный терминал:

apt-get update && apt-get install -y ubuntu-server ubuntu-desktop

Dockerfile для Ubuntu Server / 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.
NonCreature0714
источник
1

Они начинаются с файлов cloudimg в качестве базы.

Если вы посмотрите на манифесты для облачных образов, то здесь будет видно, что это базовый образ развертывания сервера.

RobotHumans
источник
1

ИМХО, рабочий стол Ubuntu в основном просто ubuntu server+ desktop environment. Официальный OP репозитория, на который указывают, не содержит никаких изображений со средой рабочего стола, поэтому вы должны рассматривать их как версии сервера.

Для минимализма я сейчас использую gcr.io/google_containers/ubuntu-slim:0.14для своего личного проекта. Это минимальный, но полностью функционирующий образ Ubuntu, размер которого составляет всего 1/3 от размера официальных изображений.

Юхао Чжан
источник
0

Для дальнейшего уточнения ответа ганбари. Вот вывод команд. Определенно нет пакетов относительно рабочего стола.

> docker pull ubuntu:latest
> docker run -t -i ubuntu /bin/bash                                
> dpkg -l ubuntu-desktop
> dpkg-query: no packages found matching ubuntu-desktop
hottehead
источник
Просто нужно apt-get update.
просто
0

Чтобы запустить определенную версию Ubuntu с помощью Docker, выполните следующую команду:

docker run -it ubuntu:16.04 /bin/bash

16.04 номер версии. Если вы пропустите номер версии, самое последнее изображение будет выбрано из хранилища. Вам не нужно получать весь Dockerfile и создавать его с нуля.

Моника Ратор
источник