mirror of
https://github.com/clearlinux/clear-linux-documentation.git
synced 2026-08-24 16:57:45 +00:00
Merge branch 'master' of github.com:clearlinux/clear-linux-documentation into kp-autoproxy-guide
This commit is contained in:
@@ -1,53 +1,3 @@
|
||||
<head>
|
||||
<title>Bundles in Clear Linux OS for Intel® Architecture</title>
|
||||
<style type="text/css">
|
||||
table {
|
||||
margin: 2em;
|
||||
border: 1px solid #e0e0e0;
|
||||
border-collapse: collapse;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
th {
|
||||
align: center;
|
||||
padding: 0.33em;
|
||||
border: #ccc solid 1px;
|
||||
background-color: #555;
|
||||
color: #fff;
|
||||
text-transform: uppercase;
|
||||
font-size: 1.21em
|
||||
}
|
||||
|
||||
tbody tr:nth-child(odd) {
|
||||
background-color: #e0e0e0;
|
||||
}
|
||||
|
||||
.bundlename {
|
||||
font-family: monospace;
|
||||
font-size: 1.13em;
|
||||
font-weight: bolder;
|
||||
padding-left: 0.42em;
|
||||
}
|
||||
|
||||
.bundlestatus {
|
||||
font-family: sans;
|
||||
font-weight: lighter;
|
||||
}
|
||||
|
||||
.bundledesc {
|
||||
font-size: 0.93em;
|
||||
line-height: 0.88em;
|
||||
font-family: sans;
|
||||
}
|
||||
|
||||
li,
|
||||
ul {
|
||||
margin-left: 0.53em;
|
||||
padding-left: 0.23em;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
.. _docker:
|
||||
|
||||
Run Docker\* on Clear Linux\*
|
||||
#############################
|
||||
Run Docker\* on |CL-ATTR|
|
||||
#########################
|
||||
|
||||
|CLOSIA| supports multiple containerization platforms, including a Docker\*
|
||||
solution. |CL| has many `unique features`_ including a minimal default
|
||||
installation, which makes it compelling to use as a host for container
|
||||
workloads, management, and orchestration.
|
||||
|CL-ATTR| supports multiple containerization platforms, including a Docker\*
|
||||
solution. |CL| has many `unique features`_ including a minimal default
|
||||
installation, which makes it compelling to use as a host for container
|
||||
workloads, management, and orchestration.
|
||||
|
||||
This tutorial covers:
|
||||
|
||||
@@ -14,18 +14,29 @@ This tutorial covers:
|
||||
:depth: 1
|
||||
|
||||
.. note::
|
||||
|
||||
This tutorial focuses on the installaton of the Docker ecosystem.
|
||||
|
||||
This tutorial focuses on the installaton of the Docker ecosystem.
|
||||
If you want to use |CL| as a Docker container image, refer to the
|
||||
official `Clear Linux image on Docker Hub`_
|
||||
and `building a custom Clear Linux docker image`_ .
|
||||
official |CL| container image
|
||||
`published on Docker* Hub <https://hub.docker.com/_/clearlinux/>`_
|
||||
and our guide to :ref:`custom-clear-container`.
|
||||
|
||||
Prerequisites
|
||||
*************
|
||||
|
||||
* Basic understanding of Linux and Docker.
|
||||
This tutorial assumes you have installed |CL| on your host system.
|
||||
For detailed instructions on installing |CL| on a bare metal system, follow
|
||||
the :ref:`bare metal installation instructions<bare-metal-install>`.
|
||||
|
||||
* Successful completion: :ref:`bare-metal-install`
|
||||
Before you install any new packages, update |CL| with the following command:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo swupd update
|
||||
|
||||
Additionally, you should have:
|
||||
|
||||
* A basic understanding of Linux and Docker.
|
||||
|
||||
* |CL| environment that has transparent network access to the Internet.
|
||||
If you are behind a HTTP proxy server, in a corporate setting for example,
|
||||
@@ -35,10 +46,10 @@ Install the containers-basic bundle
|
||||
***********************************
|
||||
|
||||
Software in |CL| is offered in the form of `bundles`_ to provide a
|
||||
complete function. The *containers-basic* provides all the required software
|
||||
packages to run Docker images as containers.
|
||||
complete function. The *containers-basic* provides all the required software
|
||||
packages to run Docker images as containers.
|
||||
|
||||
#. First, install the *containers-basic* bundle by running this
|
||||
#. First, install the *containers-basic* bundle by running this
|
||||
:command:`swupd` command:
|
||||
|
||||
.. code-block:: bash
|
||||
@@ -51,49 +62,49 @@ packages to run Docker images as containers.
|
||||
|
||||
sudo systemctl start docker
|
||||
|
||||
If you want Docker to start automatically on boot, enable the
|
||||
If you want Docker to start automatically on boot, enable the
|
||||
systemd service by running this command:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo systemctl enable docker
|
||||
|
||||
#. Finally, verify :command:`docker` has been installed by running this
|
||||
#. Finally, verify :command:`docker` has been installed by running this
|
||||
command and checking the version output for both *client* and *server*:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo docker version
|
||||
sudo docker version
|
||||
|
||||
Congratulations! At this point, you have a working installation of Docker
|
||||
Congratulations! At this point, you have a working installation of Docker
|
||||
on |CL|. You are ready to start using container images on your system.
|
||||
|
||||
Integration with Kata Containers (optional)
|
||||
********************************************
|
||||
|
||||
`Kata Containers`_, is an open source project aiming to increase security
|
||||
of containers by using a hardware-backed virtual machine container runtime
|
||||
rather than software namespace containers that are provided by the standard
|
||||
of containers by using a hardware-backed virtual machine container runtime
|
||||
rather than software namespace containers that are provided by the standard
|
||||
Docker *runc* runtime.
|
||||
|
||||
Clear Linux provides easy integration of the *kata-runtime* with Docker.
|
||||
More information on installing and using the *kata-runtime* may be found at :ref:`kata`.
|
||||
|
||||
|
||||
.. note::
|
||||
.. note::
|
||||
|
||||
The proceeding sections of this tutorial are standard to Docker setup
|
||||
and configuration. If you are familiar with Docker basics, you do not
|
||||
need to continue reading. The following sections are provided here for
|
||||
and configuration. If you are familiar with Docker basics, you do not
|
||||
need to continue reading. The following sections are provided here for
|
||||
sake of completeness.
|
||||
|
||||
Additional Docker configuration
|
||||
*******************************
|
||||
|
||||
Perform additional Docker daemon configuration via a configuration file
|
||||
typically located at :file:`/etc/docker/daemon.json`. |CL| features a
|
||||
typically located at :file:`/etc/docker/daemon.json`. |CL| features a
|
||||
`stateless system`_ so the configuration file :file:`daemon.json` does *NOT*
|
||||
exist by default.
|
||||
exist by default.
|
||||
|
||||
#. Create the :file:`daemon.json` by running this command:
|
||||
|
||||
@@ -101,34 +112,35 @@ exist by default.
|
||||
|
||||
sudo touch /etc/docker/daemon.json
|
||||
|
||||
.. note::
|
||||
.. note::
|
||||
|
||||
Refer to the `Docker documentation on daemon configuration`_ for the
|
||||
Refer to the `Docker documentation on daemon configuration`_ for the
|
||||
full list of available configuration options and examples.
|
||||
|
||||
A minimal configuration would be.
|
||||
.. code-block:: json
|
||||
|
||||
{
|
||||
"storage-driver": "devicemapper"
|
||||
}
|
||||
A minimal configuration would be:
|
||||
|
||||
#. Once you've made any required changes, be sure to restart the
|
||||
.. code-block:: json
|
||||
|
||||
{
|
||||
"storage-driver": "devicemapper"
|
||||
}
|
||||
|
||||
#. Once you've made any required changes, be sure to restart the
|
||||
Docker daemon through systemd manager by running this command:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo systemctl restart docker
|
||||
|
||||
Pulling and Running an image from Docker Hub
|
||||
Pulling and running an image from Docker Hub
|
||||
********************************************
|
||||
|
||||
`Docker Hub`_ is a publically available container image repository which
|
||||
comes preconfigured with Docker. In the example below we will pull and run
|
||||
an the official Docker image for nginx, an open source reverse proxy server.
|
||||
comes preconfigured with Docker. In the example below we will pull and run
|
||||
an the official Docker image for nginx, an open source reverse proxy server.
|
||||
|
||||
#. First, pull a container image from Docker Hub using the
|
||||
:command:`docker pull` command. Download the latest nginx Docker
|
||||
#. First, pull a container image from Docker Hub using the
|
||||
:command:`docker pull` command. Download the latest nginx Docker
|
||||
container image by running this command:
|
||||
|
||||
.. code-block:: bash
|
||||
@@ -143,37 +155,37 @@ an the official Docker image for nginx, an open source reverse proxy server.
|
||||
sudo docker run --name test-nginx -d -p 8080:80 nginx
|
||||
|
||||
.. note::
|
||||
|
||||
|
||||
Below is an explanation of switches used in the command above. For
|
||||
detailed :command:`docker run` switches and syntax, refer to the
|
||||
detailed :command:`docker run` switches and syntax, refer to the
|
||||
`Docker Documentation`_ .
|
||||
|
||||
* The *--name* switch lets you provide a friendly name to
|
||||
target the container for future operations
|
||||
|
||||
* The *-d* switch launches the container in the background
|
||||
|
||||
|
||||
* The *-p* switch allows the container's HTTP port (80) to be
|
||||
accessible from the Clear Linux host on port 8080
|
||||
accessible from the |CL| host on port 8080
|
||||
|
||||
#. You can access the Welcome to Nginx! splash page running in the container
|
||||
by browsing to http://127.0.0.1:8080 or by running this :command:`curl`
|
||||
command from your Clear Linux machine:
|
||||
by browsing to http://127.0.0.1:8080 or by running this :command:`curl`
|
||||
command from your |CL| machine:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
curl 127.0.0.1:8080
|
||||
|
||||
#. Finally, stop and delete the nginx container by running the
|
||||
#. Finally, stop and delete the nginx container by running the
|
||||
:command:`docker stop` and :command:`docker rm` commands.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo docker stop test-nginx
|
||||
sudo docker stop test-nginx
|
||||
sudo docker rm test-nginx
|
||||
|
||||
Congratulations! At this point, you have successfully pulled a nginx
|
||||
container image from `Docker Hub`_ and have run an example container.
|
||||
Congratulations! At this point, you have successfully pulled a nginx
|
||||
container image from `Docker Hub`_ and have run an example container.
|
||||
|
||||
Creating a Docker swarm cluster
|
||||
*******************************
|
||||
@@ -181,30 +193,27 @@ Creating a Docker swarm cluster
|
||||
Clusters of Docker hosts are referred to as *swarms*.
|
||||
|
||||
The process in this tutorial can be repeated to install Docker on multiple
|
||||
Clear Linux hosts with the intent to form a Docker swarm cluster.
|
||||
|CL| hosts with the intent to form a Docker swarm cluster.
|
||||
|
||||
The `Docker documentation on swarm key concepts`_ and
|
||||
`Docker documentation on creating a swarm`_ can be referenced
|
||||
The `Docker documentation on swarm key concepts`_ and
|
||||
`Docker documentation on creating a swarm`_ can be referenced
|
||||
for further instructions on setting up a swarm.
|
||||
|
||||
Also see:
|
||||
---------
|
||||
Related topics
|
||||
**************
|
||||
|
||||
* `Docker Home`_
|
||||
* `Docker Documentation`_
|
||||
* `Docker Hub`_
|
||||
* `Kata Containers`_
|
||||
* `Kata Containers`_
|
||||
|
||||
.. _unique features: https://clearlinux.org/features
|
||||
|
||||
.. _Clear Linux image on Docker Hub: https://hub.docker.com/_/clearlinux/
|
||||
|
||||
.. _building a custom Clear Linux docker image: https://clearlinux.org/documentation/clear-linux/guides/network/custom-clear-container
|
||||
|
||||
.. _Docker proxy instructions: https://docs.docker.com/config/daemon/systemd/#httphttps-proxy
|
||||
|
||||
.. _bundles: https://clearlinux.org/documentation/clear-linux/concepts/bundles-about#related-concepts
|
||||
|
||||
.. _stateless system: https://clearlinux.org/features/stateless
|
||||
.. _stateless system: https://clearlinux.org/features/stateless
|
||||
|
||||
.. _Docker documentation on daemon configuration: https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file
|
||||
|
||||
|
||||
Reference in New Issue
Block a user