The container engine, namely, Docker, is an open-source engine which allows you to create a lightweight, portable, and self-sufficient container for any application. SWR is compatible with Docker, allowing you to use Docker CLI and APIs to manage your images.
Before installing Docker, get a basic understanding of what Docker is and how it works. For more information, see Docker Documentation.
Docker is compatible with almost all operating systems. Select a Docker version that best suits your needs. If you are not sure which Docker community edition to use, see https://docs.docker.com/engine/install/.
On a device running Linux, run the following commands to quickly install Docker:
curl -fsSL get.docker.com -o get-docker.sh sh get-docker.sh sudo systemctl daemon-reload sudo systemctl restart docker
This section walks you through the steps of using a Dockerfile to build a container image for a simple web application. Dockerfile is a text file that contains all the instructions a user can call on the command line to build an image. A container image is a stack consisting of multiple layers. Each instruction creates a layer.
When using a browser to access a containerized application built from a Nginx image, you will see the default Nginx welcome page. In this section, you will build a new image based on the Nginx image to change the welcome message to Hello, SWR!
mkdir mynginx
cd mynginx
touch Dockerfile
vim Dockerfile
Add the following instructions to the Dockerfile:
FROM nginx RUN echo '<h1>Hello,SWR!</h1>' > /usr/share/nginx/html/index.html
In the preceding instructions:
Save the changes and exit.
docker build -t nginx:v1 .
docker images
This section describes how to compress a container image into a .tar or .tar.gz package.
docker images
Check the name and tag of the image to be compressed.
docker save [OPTIONS] IMAGE [IMAGE...]
OPTIONS: You can set this to --output or -o, indicating that the image is exported to a file.
The file should be in either .tar or .tar.gz.
Sample:
$ docker save nginx:latest > nginx.tar $ ls -sh nginx.tar 108M nginx.tar $ docker save php:5-apache > php.tar.gz $ ls -sh php.tar.gz 372M php.tar.gz $ docker save --output nginx.tar nginx $ ls -sh nginx.tar 108M nginx.tar $ docker save -o nginx-all.tar nginx $ docker save -o nginx-latest.tar nginx:latest