{"id":2287,"date":"2021-03-07T13:23:00","date_gmt":"2021-03-07T11:23:00","guid":{"rendered":"https:\/\/www.virtono.com\/community\/?p=2287"},"modified":"2021-03-07T04:02:23","modified_gmt":"2021-03-07T02:02:23","slug":"docker-architecture-and-components","status":"publish","type":"post","link":"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/","title":{"rendered":"Docker Architecture and Components"},"content":{"rendered":"\n<p>If you want to get hands-on real-world experience with understanding and deploying Docker Containers. Or if you have an idea and want to see it containerized online, I suggest you get a <a href=\"https:\/\/www.virtono.com\/cloud-vps\" class=\"rank-math-link\">Cloud VPS, for as little as \u20ac2.95 a month.<\/a><\/p>\n\n\n\n<p>This article is a part of our complete series of articles on Docker. Click here to access the <a href=\"https:\/\/www.virtono.com\/community\/news-announcements\/docker-deep-dive---virtono\/\" class=\"rank-math-link\">Free Series<\/a>.<\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_73 counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/#Dockers_architecture\" title=\"Docker&#8217;s architecture.\">Docker&#8217;s architecture.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/#Docker_Daemon_dockerd\" title=\"Docker Daemon (dockerd)\">Docker Daemon (dockerd)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/#Docker_Client\" title=\"Docker Client\">Docker Client<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/#Docker_Registries\" title=\"Docker Registries\">Docker Registries<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/#Docker_Components\" title=\"Docker Components\">Docker Components<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/#Images\" title=\"Images\">Images<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/#Containers\" title=\"Containers\">Containers<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/#Docker_engine\" title=\"Docker engine\">Docker engine<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Dockers_architecture\"><\/span><strong>Docker&#8217;s architecture.<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Docker uses a client-server architecture. So we can say that the Docker Daemon and Docker Client are separate binaries.<\/p>\n\n\n\n<p>The client can communicate to separate daemons what this means is that you can use the client to talk to daemons and execute commands.<\/p>\n\n\n\n<p>Daemons are responsible for doing all the heavy-lifting, this includes:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Building Docker Containers<\/li><li>Running Docker Containers<\/li><li>Distributing Docker Containers<\/li><\/ol>\n\n\n\n<p>On the question of how does the Client communicates with the Daemon, the answer is via REST API. This is achieved using:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Unix Sockets<\/li><li>Network Interface<\/li><\/ol>\n\n\n\n<p>So when you type in a command on your Client, it gets sent to the Docker Daemon via REST API, which in turn executes the command.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"555\" height=\"631\" data-attachment-id=\"2288\" data-permalink=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/attachment\/untitled\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/Untitled.png?fit=555%2C631&amp;ssl=1\" data-orig-size=\"555,631\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Untitled\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/Untitled.png?fit=555%2C631&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/Untitled.png?resize=555%2C631&#038;ssl=1\" alt=\"\" class=\"wp-image-2288\" srcset=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/Untitled.png?w=555&amp;ssl=1 555w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/Untitled.png?resize=264%2C300&amp;ssl=1 264w\" sizes=\"auto, (max-width: 555px) 100vw, 555px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Docker_Daemon_dockerd\"><\/span>Docker Daemon (dockerd)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>dockerd is the persistence process that manages docker objects. It listens to Docker API requests and executes the commands given. Few of the objects that are managed are:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Images<\/li><li>Containers<\/li><li>Volumes<\/li><li>Networks<\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Docker_Client\"><\/span>Docker Client<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Docker Client is what the end user interacts with in order to type in the commands. Let&#8217;s say we try to execute the docker run command, from the CLI perspective Docker will the command we will be executing however the command will be passed onto the Daemon and executed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Docker_Registries\"><\/span>Docker Registries<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Like we store our code on GitHub, we need a place to store our containers, that&#8217;s where the Docker Images comes in. We store these images in Docker Registries.<\/p>\n\n\n\n<p>Docker has a Public <a href=\"https:\/\/hub.docker.com\/\" class=\"rank-math-link\" target=\"_blank\" rel=\"noopener\">Docker Hub<\/a>, which is the place where users can upload their Docker Images, many officially created Images are also maintained over there. Out of the box, Docker does not come with any Images. We will be downloading them as per our needs.<\/p>\n\n\n\n<p>Flow for a Docker Architecture<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"392\" data-attachment-id=\"2290\" data-permalink=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/attachment\/architecture\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/architecture.png?fit=945%2C494&amp;ssl=1\" data-orig-size=\"945,494\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"architecture\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/architecture.png?fit=750%2C392&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/architecture.png?resize=750%2C392&#038;ssl=1\" alt=\"\" class=\"wp-image-2290\" srcset=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/architecture.png?w=945&amp;ssl=1 945w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/architecture.png?resize=300%2C157&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/architecture.png?resize=768%2C401&amp;ssl=1 768w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/figure>\n\n\n\n<p>The&nbsp;<em>docker build<\/em>&nbsp;command&nbsp;instructs the Docker daemon to create an image (dotted line).&nbsp;A corresponding&nbsp;<em>Docker file<\/em>&nbsp;must be&nbsp;available for this.&nbsp;If you don&#8217;t want to create the image yourself, but rather load it from a repository in the Docker hub, the&nbsp;<em>docker pull<\/em>&nbsp;command is&nbsp;used (dashed line).&nbsp;If the Docker daemon is&nbsp;instructed to start a container&nbsp;via&nbsp;<em>docker run<\/em>&nbsp;, the background program first checks whether the corresponding container image is available locally.&nbsp;If this is the case, the container is executed (solid line).&nbsp;If the daemon cannot find the image, it automatically initiates a pull from the repository.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Docker_Components\"><\/span>Docker Components<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Images\"><\/span>Images<span class=\"ez-toc-section-end\"><\/span><\/h4>\n\n\n\n<p>Images are what everything in the practical world of Docker is built upon. You launch your containers from images. Images are the &#8220;build&#8221; part of Docker&#8217;s lifestyle cycle. Think of them as a step-by-step guide that is to be followed by the system to get your desired Container up and running. For example:<br>\u2022 Add a file.<br>\u2022 Run a command.<br>\u2022 Open a port.<br>You can consider images to end up being the &#8220;source code&#8221; for your containers. They are highly portable and will be shared, stored, and updated. In the book, we&#8217;ll learn how to use existing images along with build our own images.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Containers\"><\/span>Containers<span class=\"ez-toc-section-end\"><\/span><\/h4>\n\n\n\n<p>Docker can help you build and deploy containers within which you can package your applications and solutions. As we&#8217;ve simply learned, containers are launched from images and can contain a number of running processes. You can consider pictures as the building or packing aspect of Docker and the containers as the running or execution facet of Docker.<br>A Docker container is:<br>\u2022 An image format.<br>\u2022 A couple of standard operations.<br>\u2022 An execution environment.<br>Docker borrows the idea of the typical shipping container, used to move<br>products globally, as a model because of its containers. But rather than shipping goods, Docker containers ship software.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"620\" height=\"413\" data-attachment-id=\"2293\" data-permalink=\"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-architecture-and-components\/attachment\/container-1\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/container-1.jpg?fit=620%2C413&amp;ssl=1\" data-orig-size=\"620,413\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"container-1\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/container-1.jpg?fit=620%2C413&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/container-1.jpg?resize=620%2C413&#038;ssl=1\" alt=\"\" class=\"wp-image-2293\" srcset=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/container-1.jpg?w=620&amp;ssl=1 620w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/container-1.jpg?resize=300%2C200&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/02\/container-1.jpg?resize=360%2C240&amp;ssl=1 360w\" sizes=\"auto, (max-width: 620px) 100vw, 620px\" \/><\/figure>\n\n\n\n<p><br>Each container contains a software program picture &#8212; its &#8216;cargo&#8217; &#8212; and, like its physical counterpart, allows a couple of operations to be performed. For instance, it can be created, started, halted, restarted, and destroyed.<br>Just like a shipping container, Docker doesn&#8217;t value the contents of the container when performing these actions; for instance, whether a container is definitely a web server, a database, or a credit card application server. Each container can be loaded exactly like any other container. <\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Docker_engine\"><\/span>Docker engine<span class=\"ez-toc-section-end\"><\/span><\/h4>\n\n\n\n<p>The heart of the Docker project is the Docker engine.&nbsp;This is an&nbsp;<strong>open source client-server application<\/strong>&nbsp;, the current version of which is available to users on all established platforms.<\/p>\n\n\n\n<p>The basic architecture of the Docker engine can be divided into three components: a&nbsp;<strong>daemon<\/strong>&nbsp;with server functions, a&nbsp;<strong>programming interface (API)<\/strong>&nbsp;based on the programming paradigm REST (Representational State Transfer) and the&nbsp;<strong>terminal of the operating system<\/strong>&nbsp;(Command-Line Interface, CLI) as a user interface (Client).<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>The Docker daemon:<\/strong>&nbsp;The Docker engine uses a daemon process as a server.&nbsp;The Docker daemon runs in the background on the host system and is used for central control of the Docker engine.&nbsp;In this function, he creates and manages all images, containers or networks.<\/li><li><strong>The REST-API:<\/strong>&nbsp;The REST-API specifies a number of interfaces that allow other programs to communicate with the Docker daemon and to give it instructions.&nbsp;One of these programs is the terminal of the operating system.<\/li><li><strong>The terminal:<\/strong>&nbsp;Docker uses the terminal of the operating system as a client program.&nbsp;This interacts with the Docker daemon via the REST API and enables users to control it through scripts or user input.<\/li><\/ul>\n\n\n\n<p>With Docker, users start, stop and manage software containers directly from the terminal.&nbsp;The daemon is addressed using the&nbsp;<strong><em>docker<\/em>&nbsp;command<\/strong>&nbsp;and instructions such as&nbsp;<em>build<\/em>&nbsp;,&nbsp;<em>pull<\/em>&nbsp;(download) or&nbsp;<em>run<\/em>&nbsp;(start).&nbsp;Client and server can be on the same system.&nbsp;Alternatively, users have the option of addressing a Docker daemon on another system.&nbsp;Depending on the type of connection to be established, communication between the client and server takes place via the REST API, UNIX sockets or a network interface.<\/p>\n\n\n\n<p>Next, lets start with installing Docker and riding this ride to Docker expertise.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you want to get hands-on real-world experience with understanding and deploying Docker Containers. Or if you have an idea and want to see it containerized online, I suggest you get a Cloud VPS, for as little as \u20ac2.95 a month. This article is a part of our complete series<\/p>\n","protected":false},"author":4,"featured_media":2314,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[5],"tags":[],"class_list":["post-2287","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-knowledgebase"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/DOCK02.png?fit=558%2C254&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p7ISfL-AT","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":3166,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-install-docker-engine-on-ubuntu\/","url_meta":{"origin":2287,"position":0},"title":"How to Install Docker Engine on Ubuntu","author":"George B.","date":"April 5, 2023","format":false,"excerpt":"What is Docker Engine? Docker Engine is an open-source client-server technology that builds and runs containers using Docker components and services. It acts as a containerization technology that allows users to interact with the Docker daemon through the Docker Engine API. Docker Engine has a declarative model that automatically adjusts\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/04\/How-to-Install-Docker-Engine-on-Ubuntu.png?fit=600%2C340&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/04\/How-to-Install-Docker-Engine-on-Ubuntu.png?fit=600%2C340&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/04\/How-to-Install-Docker-Engine-on-Ubuntu.png?fit=600%2C340&ssl=1&resize=525%2C300 1.5x"},"classes":[]},{"id":2296,"url":"https:\/\/www.virtono.com\/community\/knowledgebase\/docker-installation\/","url_meta":{"origin":2287,"position":1},"title":"Docker Installation","author":"Shreyash Sharma","date":"March 8, 2021","format":false,"excerpt":"I suggest you get machine to follow along this part. So here's a little plug of our own: Cloud VPS, for as little as \u20ac2.95 a month. This article is a part of our complete series of articles on Docker. Click here to access the Free Series. While Docker was\u2026","rel":"","context":"In &quot;Knowledgebase&quot;","block_context":{"text":"Knowledgebase","link":"https:\/\/www.virtono.com\/community\/category\/knowledgebase\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/12122013Docker_twitter.png?fit=750%2C375&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/12122013Docker_twitter.png?fit=750%2C375&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/12122013Docker_twitter.png?fit=750%2C375&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/12122013Docker_twitter.png?fit=750%2C375&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":3626,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-configure-a-private-docker-registry-in-ubuntu-22-04\/","url_meta":{"origin":2287,"position":2},"title":"How to Configure a Private Docker Registry in Ubuntu 22.04","author":"George B.","date":"June 26, 2023","format":false,"excerpt":"There are situations where you might want to set up your own private Docker registry even though Docker Hub offers a public registry for storing and sharing Docker images. In this guide, we'll show you how to set up a private Docker registry on Ubuntu 22.04 so you can manage\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/06\/How-to-Configure-a-Private-Docker-Registry-in-Ubuntu-22-04.png?fit=600%2C330&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/06\/How-to-Configure-a-Private-Docker-Registry-in-Ubuntu-22-04.png?fit=600%2C330&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/06\/How-to-Configure-a-Private-Docker-Registry-in-Ubuntu-22-04.png?fit=600%2C330&ssl=1&resize=525%2C300 1.5x"},"classes":[]},{"id":2319,"url":"https:\/\/www.virtono.com\/community\/knowledgebase\/overview-of-docker-commands-part-1\/","url_meta":{"origin":2287,"position":3},"title":"Overview of Docker Commands Part &#8211; 1","author":"Shreyash Sharma","date":"March 10, 2021","format":false,"excerpt":"I suggest you get machine to follow along this part. So here's a little plug of our own: Cloud VPS, for as little as \u20ac2.95 a month. This article is a part of our complete series of articles on Docker. Click here to access the Free Series. Back to the\u2026","rel":"","context":"In &quot;Knowledgebase&quot;","block_context":{"text":"Knowledgebase","link":"https:\/\/www.virtono.com\/community\/category\/knowledgebase\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/1_HS1OsFO7ayf_ZUzPus1FCQ.jpeg?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/1_HS1OsFO7ayf_ZUzPus1FCQ.jpeg?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/1_HS1OsFO7ayf_ZUzPus1FCQ.jpeg?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/1_HS1OsFO7ayf_ZUzPus1FCQ.jpeg?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2021\/03\/1_HS1OsFO7ayf_ZUzPus1FCQ.jpeg?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":3221,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/remove-docker-containers-images-and-volumes\/","url_meta":{"origin":2287,"position":4},"title":"Remove Docker Containers, Images, and Volumes","author":"George B.","date":"April 11, 2023","format":false,"excerpt":"Docker provides a comprehensive set of command-line tools that enable you to clean up your system effectively. If you are a beginner with Docker, this article can serve as a useful cheat sheet for reference. It provides step-by-step guidance on how to delete various objects such as Images, Containers, Volumes,\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/04\/How-to-Install-Plesk-on-Almalinux-and-Rocky-1.png?fit=600%2C330&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/04\/How-to-Install-Plesk-on-Almalinux-and-Rocky-1.png?fit=600%2C330&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/04\/How-to-Install-Plesk-on-Almalinux-and-Rocky-1.png?fit=600%2C330&ssl=1&resize=525%2C300 1.5x"},"classes":[]},{"id":3619,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-install-wordpress-using-docker-compose\/","url_meta":{"origin":2287,"position":5},"title":"How to Install WordPress using Docker Compose","author":"George B.","date":"June 25, 2023","format":false,"excerpt":"We will walk you through the process of installing WordPress using Docker Compose, allowing you to run your WordPress blog efficiently and effortlessly. WordPress is a popular content management system (CMS) that is used by millions of websites worldwide. Docker Compose, on the other hand, is a powerful tool for\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/06\/How-to-Install-WordPress-using-Docker-Compose.png?fit=600%2C330&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/06\/How-to-Install-WordPress-using-Docker-Compose.png?fit=600%2C330&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/06\/How-to-Install-WordPress-using-Docker-Compose.png?fit=600%2C330&ssl=1&resize=525%2C300 1.5x"},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/posts\/2287","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/comments?post=2287"}],"version-history":[{"count":5,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/posts\/2287\/revisions"}],"predecessor-version":[{"id":2311,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/posts\/2287\/revisions\/2311"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/media\/2314"}],"wp:attachment":[{"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/media?parent=2287"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/categories?post=2287"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/tags?post=2287"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}