{"id":5070,"date":"2018-07-10T10:06:32","date_gmt":"2018-07-10T10:06:32","guid":{"rendered":"http:\/\/www.scmgalaxy.com\/tutorials\/?p=5070"},"modified":"2021-02-27T09:07:03","modified_gmt":"2021-02-27T09:07:03","slug":"what-is-selinux-and-how-its-selinux-used-in-docker","status":"publish","type":"post","link":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/","title":{"rendered":"What is SELinux and how its SELinux used in Docker?"},"content":{"rendered":"<p><strong><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-5109\" src=\"https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux.jpg\" alt=\"\" width=\"600\" height=\"315\" srcset=\"https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux.jpg 600w, https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux-300x158.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/strong><\/p>\n<p><strong>What is SELinux and how its SELinux used in Docker?<\/strong><\/p>\n<p>There are three popular solutions for implementing access control in Linux:<\/p>\n<ol>\n<li>SELinux<\/li>\n<li>AppArmor<\/li>\n<li>GrSecurity<\/li>\n<\/ol>\n<p>Security-Enhanced Linux (SELinux) is a Linux kernel security module that provides a mechanism for supporting access control security policies. It is a security feature of the Linux kernel. It is designed to protect the server against misconfigurations and\/or compromised daemons. It put limits and instructs server daemons or programs what files they can access and what actions they can take by defining a security policy.<\/p>\n<p>SELinux is an implementation of a MAC security mechanism. MAC is an acronym for Mandatory Access Control (MAC). It is built into the Linux kernel and enabled by default on Fedora, CentOS, RHEL and a few other Linux distributions. SELinux allows server admin to define various permissions for all process. It defines how all processes can interact with other parts of the server such as:<\/p>\n<ul>\n<li>Pipes<\/li>\n<li>Files<\/li>\n<li>Network ports<\/li>\n<li>Sockets<\/li>\n<li>Directories<\/li>\n<li>Other process<\/li>\n<\/ul>\n<p>SELinux puts restrictions on each of the above object according to a policy. For example, an apache user with full permission can only access \/var\/www\/html directory, but can not touch other parts of the system such as \/etc directory without policy modification. If an attacker managed to gain access to sendmail mail or bind dns or apache web server, would only have access to exploited server and the files normally has access as defined in the policy for the server. An attacker can not access the other parts of the system or internal LAN. In other words, damage can be now restricted to the particular server and files. The cracker will not able to get a shell on your server via common daemons such as Apache \/ BIND \/ Sendmail as SELinux offers the following security features:<\/p>\n<ul>\n<li>Protect users\u2019 data from unauthorized access.<\/li>\n<li>Protect other daemons or programs from unauthorized access.<\/li>\n<li>Protect network ports \/ sockets \/ files from unauthorized access.<\/li>\n<li>Protect server against exploits.<\/li>\n<li>Avoid privilege escalation and much more.<\/li>\n<\/ul>\n<p>Please note that SELinux is not a silver bullet for protecting the server. You must follow other security practices such as<\/p>\n<ul>\n<li>Implementing firewalls policy.<\/li>\n<li>Server monitoring.<\/li>\n<li>Patching the system on time.<\/li>\n<li>Writing and securing cgi\/php\/python\/perl scripts.<\/li>\n<\/ul>\n<p>The \/etc\/selinux\/config configuration file controls whether SELinux is enabled or disabled, and if enabled, whether SELinux operates in permissive mode or enforc-ing mode.<\/p>\n<p><strong>SETTING OF SELINUX<\/strong><br \/>\nSELinux is set in three modes.<\/p>\n<p><strong>Enforcing<\/strong> \u2013 SELinux security policy is enforced. IF this is set SELinux is enabled and will try to enforce the SELinux policies strictly<\/p>\n<p><strong>Permissive<\/strong> \u2013 SELinux prints warnings instead of enforcing. This setting will just give warning when any SELinux policy setting is breached<\/p>\n<p><strong>Disabled<\/strong> \u2013 No SELinux policy is loaded. This will totally disable SELinux policies.<\/p>\n<p><strong>SELinux policies<\/strong><br \/>\nSELinux allows for multiple policies to be installed on the system, but only one policy may be active at any given time. At present, two kinds of SELinux policy exist:<\/p>\n<p><strong>Targeted<\/strong> &#8211; The targeted policy is designed as a policy where most processes operate without restrictions, and only specific ser-vices are placed into distinct security domains that are confined by the policy.<\/p>\n<p><strong>Strict<\/strong> &#8211; The strict policy is designed as a policy where all processes are partitioned<br \/>\ninto fine-grained security domains and confined by policy.<\/p>\n<p><strong>To put SELinux into enforcing mode:<\/strong><\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">$ sudo setenforce 1<\/pre>\n<p><strong>To query the SELinux status:<\/strong><\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">$ getenforce<\/pre>\n<p><strong>To see SELinux status in simplified way you can use sestatus<\/strong><\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">$ sestatus<\/pre>\n<p><strong>To get elobrated info on difference status of SELinux on different services use -b option along sestatus<\/strong><\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">$ sestatus -b<\/pre>\n<p><strong>How to disable SElinux?<\/strong><\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">We can do it in two ways\r\n1)Permanent way : edit \/etc\/selinux\/config\r\nchange the status of SELINUX from enforcing to disabled\r\nSELINUX=enforcing\r\nto\r\nSELINUX=disabled\r\nSave the file and exit.\r\n\r\n2)Temporary way : Execute below command\r\necho 0 &gt; \/selinux\/enforce\r\nor\r\nsetenforce 0\r\n\r\n<\/pre>\n<p><strong>How about enabling SELinux?<\/strong><\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">1)Permanent way : edit \/etc\/selinux\/config\r\nchange the status of SELINUX from disabled to enforcing\r\nSELINUX=disabled\r\nto\r\nSELINUX=enforcing\r\nSave the file and exit.\r\n\r\n2)Temporary way : Execute below command\r\necho 1 &gt; \/selinux\/enforce\r\nor\r\nsetenforce 1\r\n\r\n<\/pre>\n<p><strong>Now lets understand Docker with SELinux?<\/strong><br \/>\nThe interaction between SELinux policy and Docker is focused on two concerns: protection of the host, and protection of containers from one another.<\/p>\n<p>SELinux labels consist of 4 parts:<\/p>\n<p>User:Role:Type:level.<\/p>\n<p>SELinux controls access to processes by Type and Level. Docker offers two forms of SELinux protection: type enforcement and multi-category security (MCS) separation.<\/p>\n<p>Docker has the &#8211;selinux-enabled flag by default in CentOS 7.4.1708. However, in case your image or your configuration management tool is disabling it, as was the case for our puppet module verify this, you verify by running the following comman<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">$ docker info | grep 'Security Options'<\/pre>\n<p><strong>[root@ip-172-31-80-30 ec2-user]# more \/etc\/selinux\/config<\/strong><\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\"># This file controls the state of SELinux on the system.\r\n# SELINUX= can take one of these three values:\r\n# enforcing - SELinux security policy is enforced.\r\n# permissive - SELinux prints warnings instead of enforcing.\r\n# disabled - No SELinux policy is loaded.\r\nSELINUX=enforcing\r\n# SELINUXTYPE= can take one of three two values:\r\n# targeted - Targeted processes are protected,\r\n# minimum - Modification of targeted policy. Only selected processes are pro\r\ntected.\r\n# mls - Multi Level Security protection.\r\nSELINUXTYPE=targeted\r\n\r\n<\/pre>\n<p><strong>Refernece<\/strong><br \/>\nhttps:\/\/www.cyberciti.biz\/faq\/what-is-selinux\/<br \/>\nhttps:\/\/en.wikipedia.org\/wiki\/Security-Enhanced_Linux<br \/>\nhttp:\/\/jaormx.github.io\/2018\/selinux-and-docker-notes\/<\/p>\n","protected":false},"excerpt":{"rendered":"<p>What is SELinux and how its SELinux used in Docker? There are three popular solutions for implementing access control in [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":5109,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[4862,4957],"tags":[567,460,4958],"class_list":["post-5070","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-docker","category-linux","tag-docker","tag-linux","tag-selinux"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>What is SELinux and how its SELinux used in Docker? - scmGalaxy<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is SELinux and how its SELinux used in Docker? - scmGalaxy\" \/>\n<meta property=\"og:description\" content=\"What is SELinux and how its SELinux used in Docker? There are three popular solutions for implementing access control in [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/\" \/>\n<meta property=\"og:site_name\" content=\"scmGalaxy\" \/>\n<meta property=\"article:published_time\" content=\"2018-07-10T10:06:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-02-27T09:07:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"315\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"scmgalaxy K\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"scmgalaxy K\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/\"},\"author\":{\"name\":\"scmgalaxy K\",\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/#\\\/schema\\\/person\\\/fc12ad190f540e79460243c81148d102\"},\"headline\":\"What is SELinux and how its SELinux used in Docker?\",\"datePublished\":\"2018-07-10T10:06:32+00:00\",\"dateModified\":\"2021-02-27T09:07:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/\"},\"wordCount\":915,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/wp-content\\\/uploads\\\/2018\\\/07\\\/selinux.jpg\",\"keywords\":[\"Docker\",\"Linux\",\"SELinux\"],\"articleSection\":[\"Docker\",\"Linux\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/\",\"url\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/\",\"name\":\"What is SELinux and how its SELinux used in Docker? - scmGalaxy\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/wp-content\\\/uploads\\\/2018\\\/07\\\/selinux.jpg\",\"datePublished\":\"2018-07-10T10:06:32+00:00\",\"dateModified\":\"2021-02-27T09:07:03+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/#\\\/schema\\\/person\\\/fc12ad190f540e79460243c81148d102\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/wp-content\\\/uploads\\\/2018\\\/07\\\/selinux.jpg\",\"contentUrl\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/wp-content\\\/uploads\\\/2018\\\/07\\\/selinux.jpg\",\"width\":600,\"height\":315},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/what-is-selinux-and-how-its-selinux-used-in-docker\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What is SELinux and how its SELinux used in Docker?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/#website\",\"url\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/\",\"name\":\"scmGalaxy\",\"description\":\"A Platform for Software Engineers\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/#\\\/schema\\\/person\\\/fc12ad190f540e79460243c81148d102\",\"name\":\"scmgalaxy K\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4b902ea8c77ee0a326c112f29d0edf51b7c3e1cd05c4fb92a810177e9c3f12a9?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4b902ea8c77ee0a326c112f29d0edf51b7c3e1cd05c4fb92a810177e9c3f12a9?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4b902ea8c77ee0a326c112f29d0edf51b7c3e1cd05c4fb92a810177e9c3f12a9?s=96&d=mm&r=g\",\"caption\":\"scmgalaxy K\"},\"sameAs\":[\"http:\\\/\\\/www.DevOpsSchool.com\"],\"url\":\"https:\\\/\\\/www.scmgalaxy.com\\\/tutorials\\\/author\\\/scmgalaxy\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What is SELinux and how its SELinux used in Docker? - scmGalaxy","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/","og_locale":"en_US","og_type":"article","og_title":"What is SELinux and how its SELinux used in Docker? - scmGalaxy","og_description":"What is SELinux and how its SELinux used in Docker? There are three popular solutions for implementing access control in [&hellip;]","og_url":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/","og_site_name":"scmGalaxy","article_published_time":"2018-07-10T10:06:32+00:00","article_modified_time":"2021-02-27T09:07:03+00:00","og_image":[{"width":600,"height":315,"url":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux.jpg","type":"image\/jpeg"}],"author":"scmgalaxy K","twitter_card":"summary_large_image","twitter_misc":{"Written by":"scmgalaxy K","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/#article","isPartOf":{"@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/"},"author":{"name":"scmgalaxy K","@id":"https:\/\/www.scmgalaxy.com\/tutorials\/#\/schema\/person\/fc12ad190f540e79460243c81148d102"},"headline":"What is SELinux and how its SELinux used in Docker?","datePublished":"2018-07-10T10:06:32+00:00","dateModified":"2021-02-27T09:07:03+00:00","mainEntityOfPage":{"@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/"},"wordCount":915,"commentCount":0,"image":{"@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/#primaryimage"},"thumbnailUrl":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux.jpg","keywords":["Docker","Linux","SELinux"],"articleSection":["Docker","Linux"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/","url":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/","name":"What is SELinux and how its SELinux used in Docker? - scmGalaxy","isPartOf":{"@id":"https:\/\/www.scmgalaxy.com\/tutorials\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/#primaryimage"},"image":{"@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/#primaryimage"},"thumbnailUrl":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux.jpg","datePublished":"2018-07-10T10:06:32+00:00","dateModified":"2021-02-27T09:07:03+00:00","author":{"@id":"https:\/\/www.scmgalaxy.com\/tutorials\/#\/schema\/person\/fc12ad190f540e79460243c81148d102"},"breadcrumb":{"@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/#primaryimage","url":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux.jpg","contentUrl":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-content\/uploads\/2018\/07\/selinux.jpg","width":600,"height":315},{"@type":"BreadcrumbList","@id":"https:\/\/www.scmgalaxy.com\/tutorials\/what-is-selinux-and-how-its-selinux-used-in-docker\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.scmgalaxy.com\/tutorials\/"},{"@type":"ListItem","position":2,"name":"What is SELinux and how its SELinux used in Docker?"}]},{"@type":"WebSite","@id":"https:\/\/www.scmgalaxy.com\/tutorials\/#website","url":"https:\/\/www.scmgalaxy.com\/tutorials\/","name":"scmGalaxy","description":"A Platform for Software Engineers","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.scmgalaxy.com\/tutorials\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.scmgalaxy.com\/tutorials\/#\/schema\/person\/fc12ad190f540e79460243c81148d102","name":"scmgalaxy K","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/4b902ea8c77ee0a326c112f29d0edf51b7c3e1cd05c4fb92a810177e9c3f12a9?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/4b902ea8c77ee0a326c112f29d0edf51b7c3e1cd05c4fb92a810177e9c3f12a9?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4b902ea8c77ee0a326c112f29d0edf51b7c3e1cd05c4fb92a810177e9c3f12a9?s=96&d=mm&r=g","caption":"scmgalaxy K"},"sameAs":["http:\/\/www.DevOpsSchool.com"],"url":"https:\/\/www.scmgalaxy.com\/tutorials\/author\/scmgalaxy\/"}]}},"_links":{"self":[{"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/posts\/5070","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/comments?post=5070"}],"version-history":[{"count":4,"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/posts\/5070\/revisions"}],"predecessor-version":[{"id":5110,"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/posts\/5070\/revisions\/5110"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/media\/5109"}],"wp:attachment":[{"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/media?parent=5070"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/categories?post=5070"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.scmgalaxy.com\/tutorials\/wp-json\/wp\/v2\/tags?post=5070"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}