{"id":31180,"date":"2022-09-07T06:04:14","date_gmt":"2022-09-07T06:04:14","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=31180"},"modified":"2025-07-12T05:41:39","modified_gmt":"2025-07-12T05:41:39","slug":"gitlab-tutorials-how-to-setup-and-run-gitlab-runner-with-docker","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/gitlab-tutorials-how-to-setup-and-run-gitlab-runner-with-docker\/","title":{"rendered":"GitLab Tutorials: How to setup and run GitLab Runner with Docker?"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"736\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-15-1024x736.png\" alt=\"\" class=\"wp-image-31173\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-15-1024x736.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-15-300x216.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-15-768x552.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-15.png 1198w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Download and install binary<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-comment\"># Download the binary for your system<\/span>\nsudo curl -L --output \/usr\/local\/bin\/gitlab-runner https:<span class=\"hljs-comment\">\/\/gitlab-runner-downloads.s3.amazonaws.com\/latest\/binaries\/gitlab-runner-linux-amd64<\/span>\n\n<span class=\"hljs-comment\"># Give it permission to execute<\/span>\nsudo chmod +x \/usr\/local\/bin\/gitlab-runner\n\n<span class=\"hljs-comment\"># Create a GitLab Runner user<\/span>\nsudo useradd --comment <span class=\"hljs-string\">'GitLab Runner'<\/span> --create-home gitlab-runner --shell \/bin\/bash\n\n<span class=\"hljs-comment\"># Install and run as a service<\/span>\nsudo gitlab-runner install --user=gitlab-runner --working-directory=\/home\/gitlab-runner\nsudo gitlab-runner start<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Command to register runner<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">sudo gitlab-runner register --url https:<span class=\"hljs-comment\">\/\/gitlab.com\/ --registration-token $REGISTRATION_TOKEN<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"471\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-19-1024x471.png\" alt=\"\" class=\"wp-image-31182\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-19-1024x471.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-19-300x138.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-19-768x353.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-19-1536x706.png 1536w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-19.png 1782w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"375\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-20-1024x375.png\" alt=\"\" class=\"wp-image-31183\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-20-1024x375.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-20-300x110.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-20-768x281.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-20-1536x563.png 1536w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-20.png 1785w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"560\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-22-1024x560.png\" alt=\"\" class=\"wp-image-31186\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-22-1024x560.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-22-300x164.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-22-768x420.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2022\/09\/image-22.png 1362w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Download and install binary Command to register runner<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[4862],"tags":[],"class_list":["post-31180","post","type-post","status-publish","format-standard","hentry","category-docker"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/31180","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=31180"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/31180\/revisions"}],"predecessor-version":[{"id":31187,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/31180\/revisions\/31187"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=31180"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=31180"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=31180"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}