<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>DevMemo – docker</title><link>https://devmemo.gitlab.io/categories/docker/</link><description>Recent content in docker on DevMemo</description><generator>Hugo -- gohugo.io</generator><language>en</language><atom:link href="https://devmemo.gitlab.io/categories/docker/index.xml" rel="self" type="application/rss+xml"/><item><title>Cheatsheets: Docker Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/docker/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/docker/</guid><description>
&lt;h2 id="installation">Installation&lt;/h2>
&lt;h3 id="install-docker-on-ubuntu">Install Docker On Ubuntu&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update the apt package index and install packages to allow apt to use a repository over HTTPS.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get install ca-certificates curl gnupg lsb-release
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add Docker’s official GPG key.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo mkdir -p /etc/apt/keyrings
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># set up the repository.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [arch=&lt;/span>&lt;span style="color:#66d9ef">$(&lt;/span>dpkg --print-architecture&lt;span style="color:#66d9ef">)&lt;/span>&lt;span style="color:#e6db74"> signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#e6db74"> &lt;/span>&lt;span style="color:#66d9ef">$(&lt;/span>lsb_release -cs&lt;span style="color:#66d9ef">)&lt;/span>&lt;span style="color:#e6db74"> stable&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/docker.list &amp;gt; /dev/null
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install docker.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Verify if docker is successfully installed.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo docker run hello-world
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="install-docker-on-debian">Install Docker On Debian&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update the apt package index and install packages to allow apt to use a repository over HTTPS.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get install ca-certificates curl gnupg lsb-release
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add Docker’s official GPG key.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo mkdir -p /etc/apt/keyrings
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set up the repository.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [arch=&lt;/span>&lt;span style="color:#66d9ef">$(&lt;/span>dpkg --print-architecture&lt;span style="color:#66d9ef">)&lt;/span>&lt;span style="color:#e6db74"> signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#e6db74"> &lt;/span>&lt;span style="color:#66d9ef">$(&lt;/span>lsb_release -cs&lt;span style="color:#66d9ef">)&lt;/span>&lt;span style="color:#e6db74"> stable&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/docker.list &amp;gt; /dev/null
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install docker.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Verify if docker is successfully installed.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo docker run hello-world
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="run-docker-commands-without-sudo">Run Docker Commands Without Sudo&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a docker group and add yourself to it,&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># so that you don&amp;#39;t need sudo before your docker command.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Note that you&amp;#39;ll need to log out and log in for the changes to take effect.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo groupadd docker
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo usermod -aG docker $USER
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="commands">Commands&lt;/h2>
&lt;h3 id="image-management">Image Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Build an image.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker build -t &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Build an Image without using cache.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker build -t &amp;lt;image-name&amp;gt; . –no-cache
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List local images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker images
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a docker image from a running container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker commit &amp;lt;container-name-or-id&amp;gt; &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a local image.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker rmi &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove all unused images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker image prune
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove all unused containers, images, caches.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker system prune
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Push docker image to docker registry.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Image name has to be in the form of &amp;lt;docker-registry-address&amp;gt;/&amp;lt;docker-repo&amp;gt;[:&amp;lt;docker-tag&amp;gt;].&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Examples are:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># * docker-repo.local/my-image&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># * docker-repo.local/my-image:debug&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker push &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove dangling images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker images -qf dangling&lt;span style="color:#f92672">=&lt;/span>true | xargs docker rmi
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="container-management">Container Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a docker container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker create &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container from an image.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container in interactive mode.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run -it &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container in the background.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run -d &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container with a port mapping.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run -p &amp;lt;host-port&amp;gt;:&amp;lt;container-port&amp;gt; &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start an existing container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker start &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Restart a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker restart &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Pause a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker pause &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unpause a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker unpause &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Wait until running container stops.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker wait &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stop a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker stop &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker kill &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Attach a container. (C-p C-q to detach)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker attach &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rename a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker rename &amp;lt;container-id-or-name&amp;gt; &amp;lt;new-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker update &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span> &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a stopped container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker rm &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Follow the logs of a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker logs -f &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Inspect a running container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker inspect &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List running containers.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker ps
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all containers.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker ps -a
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="file-copy">File Copy&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy files from host to container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker cp &amp;lt;host-filepath&amp;gt; &amp;lt;container-id-or-name&amp;gt;:&amp;lt;container-filepath&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy files from container to host.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker cp &amp;lt;container-id-or-name&amp;gt;:&amp;lt;container-filepath&amp;gt; &amp;lt;host-filepath&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Export all files in container to host.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker export &amp;lt;container-id-or-name&amp;gt; -o &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="network-management">Network Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network create --subnet &amp;lt;subnet&amp;gt; --gateway &amp;lt;gateway&amp;gt; &amp;lt;docker-network-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network rm &amp;lt;docker-network-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all docker networks.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network ls
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Inspect a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network inspect &amp;lt;docker-network-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Connect a container with a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network connect &amp;lt;docker-network-name&amp;gt; &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Disconnect a container with a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network disconnect &amp;lt;docker-network-name&amp;gt; &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="docker-in-docker">Docker In Docker&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a docker container which maps the /var/run/docker.sock file,&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># so that you can run another docker container within this one.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run -v /var/run/docker.sock:/var/run/docker.sock -it &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="dockerfile-builder-commands">Dockerfile Builder Commands&lt;/h2>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-key-value-table" id="">
&lt;thead>
&lt;tr>
&lt;th>Command&lt;/th>
&lt;th>Description&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>FROM &amp;lt;image-name&amp;gt;&lt;/code>&lt;/td>
&lt;td>Docker base image name.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>MAINTAINER &amp;lt;email&amp;gt;&lt;/code>&lt;/td>
&lt;td>Maintainer&amp;rsquo;s email address.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>COPY &amp;lt;src-file-on-host&amp;gt; &amp;lt;dst-file-on-docker&amp;gt;&lt;/code>&lt;/td>
&lt;td>Copy files from host to docker image.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>RUN &amp;lt;command&amp;gt;&lt;/code>&lt;/td>
&lt;td>Run a command when building the image.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>USER &amp;lt;username&amp;gt;&lt;/code>&lt;/td>
&lt;td>Set the default user name.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>WORKDIR &amp;lt;dir&amp;gt;&lt;/code>&lt;/td>
&lt;td>Set the default working directory.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>CMD &amp;lt;command&amp;gt;&lt;/code>&lt;/td>
&lt;td>Start up default command which can be overridden by docker cli.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ENTRYPOINT &amp;lt;command&amp;gt;&lt;/code>&lt;/td>
&lt;td>Start up default command which cannot be overridden by docker cli.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ENV &amp;lt;env-name&amp;gt; &amp;lt;env-value&amp;gt;&lt;/code>&lt;/td>
&lt;td>Environment variables.&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h2 id="docker-config">Docker Config&lt;/h2>
&lt;h3 id="insecure-docker-registry">Insecure Docker Registry&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add the following content to /etc/docker/daemon.json if you using an insecure docker registry.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">{&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;insecure-registries&amp;#34;&lt;/span> : &lt;span style="color:#f92672">[&lt;/span>&lt;span style="color:#e6db74">&amp;#34;&amp;lt;your-docker-register-server-ip-or-hostname&amp;gt;&amp;#34;&lt;/span>&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item></channel></rss>