
Ubuntu Example in Docker
Running an Ubuntu container in Docker is a simple and effective way to start working with Ubuntu in a containerized environment. Ubuntu images are available on Docker Hub, and you can use them to create containers for development, testing, or production environments.
Let's go through an example where we will pull an official Ubuntu image, run a container, and perform some basic operations.
Steps to Run Ubuntu in Docker
1. Pull the Official Ubuntu Image
First, you need to pull the official Ubuntu image from Docker Hub.
To pull the latest Ubuntu image:
docker pull ubuntu
This will pull the official Ubuntu image (latest version) to your local system. If you want to pull a specific version of Ubuntu (e.g., Ubuntu 20.04), you can specify the version like so:
docker pull ubuntu:20.04
2. Run an Ubuntu Container
Once you have the image, you can run an Ubuntu container. To do this, use the docker run
command.
Here’s a basic command to run an interactive container:
docker run -it ubuntu
-i
: Runs the container in interactive mode, allowing you to interact with the container's shell.-t
: Allocates a pseudo-TTY, allowing you to interact with the container (essentially giving you a terminal).ubuntu
: Specifies the image you want to use (in this case, the latest Ubuntu image).
After running this command, you’ll be dropped into the shell of an Ubuntu container.
Example output:
root@<container_id>:/#
You are now inside an Ubuntu container, where you can execute Ubuntu commands just like you would in a normal Ubuntu environment.
3. Install Packages in the Ubuntu Container
Once you're inside the Ubuntu container, you can install packages as needed. For example, to install curl
:
apt-get updateapt-get install curl
apt-get update
: Updates the package lists for upgrades and new installations.apt-get install curl
: Installscurl
, a tool for transferring data with URLs.
After installing a package, you can use it inside the container.
4. Exit the Container
Once you're done working with the container, you can exit the shell by typing:
exit
This will stop the container and return you to your local machine's terminal.
5. List Running Containers
If you want to see any containers that are still running, you can use:
docker ps
This will show a list of running containers. If you want to see all containers (including stopped ones), you can use:
docker ps -a
6. Restart a Stopped Container
If you want to restart a stopped container, you can do so with the docker start
command. First, find the container ID from docker ps -a
, then use:
docker start -i <container_id>
This will start the container and open it interactively again.
7. Remove a Container
If you want to remove a container, use the following command (replace <container_id>
with your actual container ID):
docker rm <container_id>
8. Create a Custom Ubuntu Image (Optional)
If you’ve installed additional packages or made changes to the Ubuntu container that you want to save, you can commit the changes to a new image.
For example, after installing curl
and making other changes, you can create a new image:
docker commit <container_id> my-ubuntu-image
This creates a new image named my-ubuntu-image
with all the changes you made.
9. Run a Container with a Custom Ubuntu Image
Once the custom image is created, you can run a new container from it:
docker run -it my-ubuntu-image
This will launch a new container based on your custom Ubuntu image.
10. Create a Dockerfile for a Custom Ubuntu Image
If you want to automate the process of building a custom Ubuntu image with specific software installed, you can use a Dockerfile.
Example Dockerfile for Ubuntu:
# Use the official Ubuntu base imageFROM ubuntu:20.04# Set the maintainer labelLABEL maintainer="yourname@example.com"# Update package list and install curl and vimRUN apt-get update && apt-get install -y curl vim# Set the default command for the containerCMD ["bash"]
This Dockerfile starts from the official ubuntu:20.04
image, installs curl
and vim
, and then sets the default command to bash
when the container starts.
Build the Docker Image from the Dockerfile:
- Save the above Dockerfile in a directory.
- Open a terminal in that directory.
- Build the image:
docker build -t my-custom-ubuntu .
- Run a container based on the new image:
docker run -it my-custom-ubuntu
Conclusion
You’ve successfully run an Ubuntu container using Docker! You can easily install software, configure the environment, and even commit your changes into new images for reuse. Docker makes it easy to create lightweight, isolated environments for Ubuntu or any other Linux distribution.