Imagen oficial de Docker para Ubuntu Server?

19

Todo lo que pude encontrar es una imagen oficial de Docker para Ubuntu Desktop en Docker Hub. ¿No hay uno para Ubuntu Server?

¿Eso significa que tendría que crear mi propia imagen base usandoscratch ?

soy yo
fuente
@markkirby ¿No es Ubuntu Server una versión simplificada de Ubuntu Desktop más optimizaciones adaptadas para el servidor? Si es así, por eso. No entiendo lo que intentas decir.
its_me
Mira mi respuesta: configuré un contenedor de servidor ubuntu :) es fácil
NonCreature0714

Respuestas:

9

Todo lo que pude encontrar es una imagen oficial de Docker para Ubuntu Desktop en Docker Hub.

En ninguna parte esa página dice que es una imagen de escritorio de Ubuntu . De todos modos, eso no tendría sentido porque (en general) no ejecuta un entorno de escritorio en un contenedor Docker.

Andreas Veithen
fuente
De acuerdo, ese era mi pensamiento, el OP asumió que era para escritorio, pero en ninguna parte dice eso.
Mark Kirby
3
Andreas y @markkirby - Sí, ahora parece obvio; No se me ocurrió antes. Pensé que era una distribución de escritorio basada en la descripción, "¿Qué es Ubuntu? - Ubuntu es un sistema operativo Linux basado en Debian, con Unity como su entorno de escritorio predeterminado. "
its_me
1
@its_me No te preocupes por eso, deberías ver algunas de las preguntas ridículas que he hecho en el pasado, en el momento en que parecen buenas, pero todos cometemos errores :)
Mark Kirby
14

Puede probarlo, primero ejecute bash en el contenedor de Ubuntu de la siguiente manera:

docker run -it ubuntu /bin/bash

-i, --interactive Mantenga STDIN abierto incluso si no está conectado

-t, --tty Asignar un pseudo-TTY

Luego ejecute el siguiente comando para verificar si ubuntu-desktopestá instalado:

dpkg -l ubuntu-desktop
ghanbari
fuente
1
Esta es la verdadera respuesta. Y confirmó que ubuntu-desktop no está instalado en la imagen de ubuntu oficial de Docker.
wisbucky
Lo ejecuté en mi escritorio ubuntu personal. Resultado: dpkg-query: no se encontraron paquetes que coincidan con ubuntu-desktop; P
Waldemar Wosiński
13

La pregunta era sobre Ubuntu Server, pero todas las respuestas y discusiones eran sobre Ubuntu Desktop. Entonces responderé a ambas, pero primero me dirijo a Ubuntu Desktop. Finalmente, (y probablemente no se recomienda para un contenedor efímero , y la mayoría de los contenedores deberían ser efímeros según las mejores prácticas de Docker , pero bueno, hay excepciones). Puede instalar Ubuntu Desktop y Ubuntu Server en un contenedor y ejecutarlo.


NOTA: puede agregar el--rmindicador para evitar que el almacenamiento de su host se hinche eliminando automáticamente los contenedores después de que se ejecuten, si solo está experimentando con ellos.

docker run --rm -it ubuntu

Ubuntu Desktop Container

Un contenedor en funcionamiento

¡Este es un contenedor bastante grande! ~ 1.5Gb

Si tu corres:

docker run -it ubuntu

Luego, en el contenedor:

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

Efectivamente descargará el escritorio de Ubuntu

Dockerfile para Ubuntu Desktop

Se puede hacer un Dockerfile:

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

Luego compílalo:

docker build -t ubuntu-desktop .

Y ejecútalo:

docker run -it ubuntu-desktop

Contenedor de servidor Ubuntu

Un contenedor en funcionamiento

docker run -it ubuntu

Desde la terminal de contenedores:

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

Dockerfile para Ubuntu Server

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

Constrúyelo:

docker build -t ubuntu-server .

Ejecutarlo:

docker run -it ubuntu-server

Escritorio de Ubuntu y Contenedor de Servidor

Un contenedor en funcionamiento:

docker run -it ubuntu

La terminal del contenedor:

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

Dockerfile para Ubuntu Server / Desktop

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

Constrúyelo:

docker build -t ubuntu-server-desktop .

Ejecutarlo:

docker run -it ubuntu-server-desktop.
NonCreature0714
fuente
1

Comienzan con los archivos cloudimg como base.

Si observa los manifiestos para imágenes en la nube aquí , parece que es la imagen base de implementación del servidor.

RobotHumanos
fuente
1

En mi humilde opinión, el escritorio de ubuntu es principalmente solo ubuntu server+ desktop environment. El OP oficial de repositorio señalado no contiene ninguna imagen con el entorno de escritorio, por lo que solo debe tratarlas como las versiones del servidor.

Para minimalista, actualmente lo uso gcr.io/google_containers/ubuntu-slim:0.14para mi proyecto personal. Es una imagen ubuntu mínima pero totalmente funcional con solo 1/3 del tamaño de esas imágenes oficiales.

Yuhao Zhang
fuente
0

Para aclarar aún más la respuesta ghanbari. Aquí está la salida de los comandos. Definitivamente no hay paquetes con respecto al escritorio.

> docker pull ubuntu:latest
> docker run -t -i ubuntu /bin/bash                                
> dpkg -l ubuntu-desktop
> dpkg-query: no packages found matching ubuntu-desktop
cabeza caliente
fuente
Sólo necesidades apt-get update.
simpleigh
0

Para ejecutar una versión específica de Ubuntu con Docker, ejecute este comando:

docker run -it ubuntu:16.04 /bin/bash

16.04 es el número de versión. Si omite el número de versión, la última imagen se seleccionará del repositorio. No necesita obtener todo el Dockerfile y crearlo desde cero.

Monika Rathor
fuente