19

All I could find is an official Docker image for Ubuntu Desktop on Docker Hub. Isn't there one for Ubuntu Server?

Does that mean, I'd have to create my own base image using scratch?

  • @markkirby Isn't Ubuntu Server a stripped down version of Ubuntu Desktop plus optimizations tailored for the server? If yes, that's why. I don't understand what you are trying to say. – its_me Dec 9 '15 at 9:23
  • Check out my answer - I set up an ubuntu server container :) it's easy – NonCreature0714 Dec 24 '17 at 22:01
8

All I could find is an official Docker image for Ubuntu Desktop on Docker Hub.

Nowhere does that page say that it's an Ubuntu Desktop image. Anyway, that wouldn't make sense because you (generally) don't run a desktop environment in a Docker container.

  • Agreed, that was my thoughts, the OP assumed it was for desktop, but nowhere does it actually say that. – Mark Kirby Dec 9 '15 at 11:09
  • 3
    Andreas and @markkirby - Yeah, it sure seems obvious now; didn't occur to me earlier. I thought it's a desktop distribution based on the description, "What is Ubuntu? -- Ubuntu is a Debian-based Linux operating system, with Unity as its default desktop environment." – its_me Dec 9 '15 at 16:24
  • 1
    @its_me Don't worrie about it, you should see some of the ridiculous questions I have asked in the past, at the time they seem good, but we all make mistakes :) – Mark Kirby Dec 9 '15 at 16:51
14

You can test it, first run bash in Ubuntu container by:

docker run -it ubuntu /bin/bash

-i, --interactive Keep STDIN open even if not attached

-t, --tty Allocate a pseudo-TTY

Then run following command to check if ubuntu-desktop is installed:

dpkg -l ubuntu-desktop
  • 1
    This is the real answer. And confirmed that ubuntu-desktop is not installed in the Docker official ubuntu image. – wisbucky Jul 7 '17 at 22:18
  • I've run it on my personal ubuntu desktop. Result: dpkg-query: no packages found matching ubuntu-desktop ;P – Waldemar Wosiński Nov 16 '17 at 8:37
12

The question was about Ubuntu Server, but all the answers and discussion were about Ubuntu Desktop. So I'll answer both, but address Ubuntu Desktop first. Finally, (and likely a not recommended for an ephemeral container, and most containers should be ephemeral per Docker's best practices, but hey, there's exceptions.) you can install Ubuntu Desktop and Ubuntu Server on a container and run it.


NOTE: You can add the --rm flag to keep your host's storage from bloating by automatically deleting containers after they run, if you're only experimenting with them.

docker run --rm -it ubuntu

Ubuntu Desktop Container

A running container

This is a pretty big container! ~ 1.5Gb

If you run:

docker run -it ubuntu

Then, in the container:

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

You'll effectively download the Ubuntu Desktop

Dockerfile for Ubuntu Desktop

A Dockerfile could be made:

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

Then build it:

docker build -t ubuntu-desktop .

And run it:

docker run -it ubuntu-desktop

Ubuntu Server container

A running container

docker run -it ubuntu

From container terminal:

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

Dockerfile for Ubuntu Server

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

Build it:

docker build -t ubuntu-server .

Run it:

docker run -it ubuntu-server

Ubuntu Desktop and Server Container

A running container:

docker run -it ubuntu

The container's terminal:

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

Dockerfile for Ubuntu Server/Desktop

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

Build it:

docker build -t ubuntu-server-desktop .

Run it:

docker run -it ubuntu-server-desktop.
1

They start with the cloudimg files as a base.

If you look at the manifests for cloud images here it looks like it is the server deployment base image.

1

IMHO, ubuntu desktop is mostly just ubuntu server + desktop environment. The official repo OP pointed at does not contain any images with the desktop environment so you should just treat them as the server versions.

For minimalist, I currently use gcr.io/google_containers/ubuntu-slim:0.14 for my personal project. It is a minimal but fully functioning ubuntu image with only 1/3 the size of those official images.

0

To further clarify ghanbari answer. Here is the output of the commands. Definitly no packages regarding desktop.

> docker pull ubuntu:latest
> docker run -t -i ubuntu /bin/bash                                
> dpkg -l ubuntu-desktop
> dpkg-query: no packages found matching ubuntu-desktop
  • Just needs apt-get update. – simpleigh Jan 18 at 10:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.