{"id":18265,"date":"2022-08-05T08:21:13","date_gmt":"2022-08-05T06:21:13","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=18265"},"modified":"2022-08-05T08:36:05","modified_gmt":"2022-08-05T06:36:05","slug":"run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/","title":{"rendered":"Run 2 specific GitLab Runners in local containers for CI\/CD Pipeline"},"content":{"rendered":"\n<p>By testing GitLab CI\/CD pipeline on my free SaaS GitLab account, I&#8217;ve explored the setup of specific GitLab Runner in containers on my local machine. For those who don&#8217;t want to use the shared runners of GitLab (it&#8217;s free but you still have to share your credit card details with GitLab!) or just want to do some tests and keep the full control of the Runners, here is a quick setup that should cover several test scenarios for your needs.<\/p>\n\n\n\n<p>GitLab gives all the details for creating a Runner into one container <a href=\"https:\/\/docs.gitlab.com\/runner\/install\/docker.html\">here<\/a>. If you are in a hurry (who isn&#8217;t!) and want a quick procedure to follow or if you want to create a second one in order to test jobs ran by two different Runner, follow through.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">First Runner in a local container<\/h2>\n\n\n\n<p>Let&#8217;s hit our terminal straight away to run our first gitlab-runner container:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nenb@DBI-LT-ENB project1 % docker run -d --name gitlab-runner --restart always \\\n  -v \/Users\/Shared\/gitlab-runner\/config:\/etc\/gitlab-runner \\\n  gitlab\/gitlab-runner:latest\n<\/pre><\/div>\n\n\n<p>As I&#8217;m on MacOS, I&#8217;m using \/Users\/Shared instead of \/srv as per GitLab documentation. This volume mounted will keep the Runner configuration persistent after a container restart. I didn&#8217;t use the option -v \/var\/run\/docker.sock:\/var\/run\/docker.sock as I&#8217;m going to use Shell Executor.<\/p>\n\n\n\n<p>Now let&#8217;s register our Runner:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nenb@DBI-LT-ENB project1 % docker run --rm -it -v \/Users\/Shared\/gitlab-runner\/config:\/etc\/gitlab-runner gitlab\/gitlab-runner register\n<\/pre><\/div>\n\n\n<p>Provide all the required register information (you could alternatively have passed all those parameters as options of the register command above):<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nRuntime platform                                    arch=arm64 os=linux pid=7 revision=32fc1585 version=15.2.1\nRunning in system-mode.\n\nEnter the GitLab instance URL (for example, https:\/\/gitlab.com\/):\nhttps:\/\/gitlab.com\/\nEnter the registration token:\nGZ2358921LfDn-pbKiaL6exvSk0B2\nEnter a description for the runner:\n&#x5B;21e5bba348f9]: gitlab-runner1\nEnter tags for the runner (comma-separated):\nr1\nEnter optional maintenance note for the runner:\n\nRegistering runner... succeeded                     runner=GZ2358921LfDn-pb\nEnter an executor: custom, docker-ssh, parallels, docker-ssh+machine, kubernetes, docker, shell, ssh, virtualbox, docker+machine:\nshell\nRunner registered successfully. Feel free to start it, but if it&#039;s running already the config should be automatically reloaded!\n\nConfiguration (with the authentication token) was saved in &quot;\/etc\/gitlab-runner\/config.toml&quot;\n<\/pre><\/div>\n\n\n<p>The GitLab instance and registration token are given in your GitLab project (Settings -&gt; CD\/CD -&gt; Runners). Enter a unique tag (or tags) for this runner as this will be used to identify it in your CI\/CD pipeline (by default untagged Jobs are not run). It is here I define I&#8217;ll use Shell Executor for this runner. Note that this configuration is saved in the volume mounted in the previous step.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Second Runner in another local container<\/h2>\n\n\n\n<p>Repeat these two commands above for the second Runner:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nenb@DBI-LT-ENB project1 % docker run -d --name gitlab-runner2 --restart always \\\n  -v \/Users\/Shared\/gitlab-runner\/config2:\/etc\/gitlab-runner \\\n  gitlab\/gitlab-runner:latest\n<\/pre><\/div>\n\n\n<p>Just change the name used for this Runner as well as the local folder for the volume mount.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nenb@DBI-LT-ENB project1 % docker run --rm -it -v \/Users\/Shared\/gitlab-runner\/config2:\/etc\/gitlab-runner gitlab\/gitlab-runner register\nRuntime platform                                    arch=arm64 os=linux pid=7 revision=32fc1585 version=15.2.1\nRunning in system-mode.\n\nEnter the GitLab instance URL (for example, https:\/\/gitlab.com\/):\nhttps:\/\/gitlab.com\/\nEnter the registration token:\nGZ2358921LfDn-pbKiaL6exvSk0B2\nEnter a description for the runner:\n&#x5B;c29d03644a73]: gitlab-runner2\nEnter tags for the runner (comma-separated):\nr2\nEnter optional maintenance note for the runner:\n\nRegistering runner... succeeded                     runner=GZ2358921LfDn-pb\nEnter an executor: custom, shell, ssh, docker+machine, docker-ssh+machine, kubernetes, docker, docker-ssh, parallels, virtualbox:\nshell\nRunner registered successfully. Feel free to start it, but if it&#039;s running already the config should be automatically reloaded!\n\nConfiguration (with the authentication token) was saved in &quot;\/etc\/gitlab-runner\/config.toml&quot;\n<\/pre><\/div>\n\n\n<p>We provide another description for the runner (this will be the name used in GitLab to identify your Runner) as well as another tag for this Runner (to be used in our Pipeline).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Checking of our setup<\/h2>\n\n\n\n<p>Both our Runner containers are up and running on my local machine:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nenb@DBI-LT-ENB project1 % docker ps\nCONTAINER ID   IMAGE                         COMMAND                  CREATED         STATUS         PORTS     NAMES\n3ce44058ff1c   gitlab\/gitlab-runner:latest   &quot;\/usr\/bin\/dumb-init \u2026&quot;   2 minutes ago   Up 2 minutes             gitlab-runner2\n5d44c65d768e   gitlab\/gitlab-runner:latest   &quot;\/usr\/bin\/dumb-init \u2026&quot;   4 minutes ago   Up 4 minutes             gitlab-runner\n<\/pre><\/div>\n\n\n<p>They have also been successfully registered in our GitLab project:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"858\" height=\"468\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png\" alt=\"\" class=\"wp-image-18278\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png 858w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-300x164.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-768x419.png 768w\" sizes=\"auto, (max-width: 858px) 100vw, 858px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">GitLab CI\/CD Pipeline<\/h2>\n\n\n\n<p>The last step is to use both of those Runner in our CI\/CD Pipeline by using the simple script below (Use the Editor of SaaS GitLab to edit the pipeline file .gitlab-ci.yml):<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: yaml; title: ; notranslate\" title=\"\">\nbuild1:\n  tags:\n    - r1\n  stage: build\n  script:\n    - echo &quot;Do your build here&quot;\n\ntest:\n  tags:\n    - r2\n  stage: test\n  script:\n    - echo &quot;Do a test here&quot;\n<\/pre><\/div>\n\n\n<p>&#8220;build1&#8221; Job is using the Runner with the tag r1 and &#8220;test&#8221; the one with the tag r2. Let&#8217;s run it and see the results:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"402\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1.png\" alt=\"\" class=\"wp-image-18281\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1.png 1000w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1-300x121.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1-768x309.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"968\" height=\"406\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2.png\" alt=\"\" class=\"wp-image-18282\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2.png 968w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2-300x126.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2-768x322.png 768w\" sizes=\"auto, (max-width: 968px) 100vw, 968px\" \/><\/figure>\n\n\n\n<p>We can see that each Job is using each of our Runner using the Shell Executor as configured. You can now perform more advanced tests with your Runners and your GitLab project.<\/p>\n\n\n\n<p>If you want to bring your Docker skills to the next level, check out our <a href=\"https:\/\/www.dbi-services.com\/en\/courses\/docker-and-kubernetes-essential-skills\/\">Training course<\/a> given by our Docker Guru!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>By testing GitLab CI\/CD pipeline on my free SaaS GitLab account, I&#8217;ve explored the setup of specific GitLab Runner in containers on my local machine. For those who don&#8217;t want to use the shared runners of GitLab (it&#8217;s free but you still have to share your credit card details with GitLab!) or just want to [&hellip;]<\/p>\n","protected":false},"author":109,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1320,1504],"tags":[762,601,2648,2649],"type_dbi":[],"class_list":["post-18265","post","type-post","status-publish","format-standard","hentry","category-devops","category-docker","tag-containers","tag-docker","tag-gitlab","tag-gitlab-runner"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.6) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Run 2 specific GitLab Runners in local containers for CI\/CD Pipeline - dbi Blog<\/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.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Run 2 specific GitLab Runners in local containers for CI\/CD Pipeline\" \/>\n<meta property=\"og:description\" content=\"By testing GitLab CI\/CD pipeline on my free SaaS GitLab account, I&#8217;ve explored the setup of specific GitLab Runner in containers on my local machine. For those who don&#8217;t want to use the shared runners of GitLab (it&#8217;s free but you still have to share your credit card details with GitLab!) or just want to [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-08-05T06:21:13+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-08-05T06:36:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png\" \/>\n<meta name=\"author\" content=\"DevOps\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DevOps\" \/>\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.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/\"},\"author\":{\"name\":\"DevOps\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/4cd1b5f8a3de93f05a16ab8d7d2b7735\"},\"headline\":\"Run 2 specific GitLab Runners in local containers for CI\\\/CD Pipeline\",\"datePublished\":\"2022-08-05T06:21:13+00:00\",\"dateModified\":\"2022-08-05T06:36:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/\"},\"wordCount\":530,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/08\\\/image.png\",\"keywords\":[\"Containers\",\"Docker\",\"GitLab\",\"GitLab Runner\"],\"articleSection\":[\"DevOps\",\"Docker\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/\",\"name\":\"Run 2 specific GitLab Runners in local containers for CI\\\/CD Pipeline - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/08\\\/image.png\",\"datePublished\":\"2022-08-05T06:21:13+00:00\",\"dateModified\":\"2022-08-05T06:36:05+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/4cd1b5f8a3de93f05a16ab8d7d2b7735\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/08\\\/image.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/08\\\/image.png\",\"width\":858,\"height\":468},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Run 2 specific GitLab Runners in local containers for CI\\\/CD Pipeline\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/4cd1b5f8a3de93f05a16ab8d7d2b7735\",\"name\":\"DevOps\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/cdd2dd7441774355062c0f0f68612296b059cd1e2ff6c7af0b15dba0ed64a85f?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/cdd2dd7441774355062c0f0f68612296b059cd1e2ff6c7af0b15dba0ed64a85f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/cdd2dd7441774355062c0f0f68612296b059cd1e2ff6c7af0b15dba0ed64a85f?s=96&d=mm&r=g\",\"caption\":\"DevOps\"},\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/devops\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Run 2 specific GitLab Runners in local containers for CI\/CD Pipeline - dbi Blog","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.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/","og_locale":"en_US","og_type":"article","og_title":"Run 2 specific GitLab Runners in local containers for CI\/CD Pipeline","og_description":"By testing GitLab CI\/CD pipeline on my free SaaS GitLab account, I&#8217;ve explored the setup of specific GitLab Runner in containers on my local machine. For those who don&#8217;t want to use the shared runners of GitLab (it&#8217;s free but you still have to share your credit card details with GitLab!) or just want to [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/","og_site_name":"dbi Blog","article_published_time":"2022-08-05T06:21:13+00:00","article_modified_time":"2022-08-05T06:36:05+00:00","og_image":[{"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png","type":"","width":"","height":""}],"author":"DevOps","twitter_card":"summary_large_image","twitter_misc":{"Written by":"DevOps","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/"},"author":{"name":"DevOps","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/4cd1b5f8a3de93f05a16ab8d7d2b7735"},"headline":"Run 2 specific GitLab Runners in local containers for CI\/CD Pipeline","datePublished":"2022-08-05T06:21:13+00:00","dateModified":"2022-08-05T06:36:05+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/"},"wordCount":530,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png","keywords":["Containers","Docker","GitLab","GitLab Runner"],"articleSection":["DevOps","Docker"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/","url":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/","name":"Run 2 specific GitLab Runners in local containers for CI\/CD Pipeline - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png","datePublished":"2022-08-05T06:21:13+00:00","dateModified":"2022-08-05T06:36:05+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/4cd1b5f8a3de93f05a16ab8d7d2b7735"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png","width":858,"height":468},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/run-2-specific-gitlab-runners-in-local-containers-for-ci-cd-pipeline\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Run 2 specific GitLab Runners in local containers for CI\/CD Pipeline"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/4cd1b5f8a3de93f05a16ab8d7d2b7735","name":"DevOps","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/cdd2dd7441774355062c0f0f68612296b059cd1e2ff6c7af0b15dba0ed64a85f?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/cdd2dd7441774355062c0f0f68612296b059cd1e2ff6c7af0b15dba0ed64a85f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/cdd2dd7441774355062c0f0f68612296b059cd1e2ff6c7af0b15dba0ed64a85f?s=96&d=mm&r=g","caption":"DevOps"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/devops\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/18265","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/109"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=18265"}],"version-history":[{"count":37,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/18265\/revisions"}],"predecessor-version":[{"id":18307,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/18265\/revisions\/18307"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=18265"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=18265"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=18265"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=18265"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}