web-dev-qa-db-fra.com

Image officielle de Docker pour Ubuntu Server?

Tout ce que j'ai pu trouver, c'est un image officielle de Docker pour Ubuntu Desktop sur Docker Hub. N'y a-t-il pas un serveur Ubuntu?

Est-ce que cela signifie que je devrais créer ma propre image de base en utilisant scratch ?

16
its_me

Tout ce que j'ai pu trouver, c'est un image officielle de Docker pour Ubuntu Desktop sur Docker Hub.

Nulle part cette page ne dit-elle que c'est une image Ubuntu Desktop . Quoi qu'il en soit, cela n’aurait aucun sens car vous n’exécutez (généralement) pas d’environnement de bureau dans un conteneur Docker.

8
Andreas Veithen

Vous pouvez le tester, exécutez d'abord bash dans le conteneur Ubuntu en:

docker run -it ubuntu /bin/bash

-i, --interactive Maintenir STDIN ouvert même s'il n'est pas attaché

-t, --tty Allouer un pseudo-ATS

Puis exécutez la commande suivante pour vérifier si ubuntu-desktop est installé:

dpkg -l ubuntu-desktop
13
ghanbari

La question portait sur Ubuntu Server, mais toutes les réponses et discussions portaient sur Ubuntu Desktop. Je vais donc répondre aux deux, mais je parlerai d’abord d’Ubuntu Desktop. Enfin, (et probablement un non recommandé pour un conteneur éphémère , et la plupart des conteneurs doivent être éphémères. Meilleures pratiques de Docker , mais bon, il y a des exceptions.) Vous pouvez installer Ubuntu Desktop et Ubuntu Server sur un conteneur et l'exécuter.


REMARQUE: Vous pouvez ajouter l'indicateur --rm pour empêcher le stockage de votre hôte de se gonfler en supprimant automatiquement les conteneurs après ils courent, si vous ne faites que les expérimenter.

docker run --rm -it ubuntu

Ubuntu Desktop Container

Un conteneur en cours d'exécution

C'est un joli gros conteneur! ~ 1,5 Go

Si vous courez:

docker run -it ubuntu

Ensuite, dans le conteneur:

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

Vous allez effectivement télécharger le bureau Ubuntu

Dockerfile pour Ubuntu Desktop

Un fichier Docker pourrait être créé:

FROM ubuntu:16.04
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y ubuntu-desktop

Alors construis-le:

docker build -t ubuntu-desktop .

Et lancez-le:

docker run -it ubuntu-desktop

Conteneur Ubuntu Server

Un conteneur en cours d'exécution

docker run -it ubuntu

Du terminal à conteneurs:

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

Dockerfile pour le serveur Ubuntu

FROM ubuntu:16.04
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y ubuntu-server

Construit le:

docker build -t ubuntu-server .

Exécuter:

docker run -it ubuntu-server

Ubuntu Desktop et Server Container

Un conteneur en cours d'exécution:

docker run -it ubuntu

Le terminal du conteneur:

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

Dockerfile pour Ubuntu Server/Desktop

FROM ubuntu:16.04
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y ubuntu-server ubuntu-desktop

Construit le:

docker build -t ubuntu-server-desktop .

Exécuter:

docker run -it ubuntu-server-desktop.
9
NonCreature0714

Ils commencent par les fichiers cloudimg en tant que base.

Si vous consultez les manifestes pour les images en nuage ici , il s’agit bien de l’image de base du déploiement du serveur.

1
RobotHumans

IMHO, ubuntu desktop est généralement juste ubuntu server + desktop environment. Le référentiel officiel OP indiqué ne contient aucune image avec l’environnement de bureau. Vous devez donc les traiter comme les versions du serveur.

Pour minimaliste, j'utilise actuellement gcr.io/google_containers/ubuntu-slim:0.14 pour mon projet personnel. C'est une image ubuntu minimale mais pleinement fonctionnelle avec seulement 1/3 de la taille de ces images officielles.

0
Yuhao Zhang

Pour clarifier davantage la réponse de ghanbari. Voici la sortie des commandes. Certainement pas de paquets concernant le bureau.

> docker pull ubuntu:latest
> docker run -t -i ubuntu /bin/bash                                
> dpkg -l ubuntu-desktop
> dpkg-query: no packages found matching ubuntu-desktop
0
hottehead