{"id":2781,"date":"2025-05-01T23:26:14","date_gmt":"2023-03-22T14:48:34","guid":{"rendered":""},"modified":"2025-02-02T00:46:19","modified_gmt":"2025-02-01T23:46:19","slug":"how-to-install-gitlab-ce-with-docker-on-debian-12","status":"publish","type":"post","link":"https:\/\/netcloud24.com\/knowledgebase\/how-to-install-gitlab-ce-with-docker-on-debian-12\/","title":{"rendered":"Linux VPS &#038; VPS Windows Setup Guide | NetCloud24 GitLab CE with Docker on Debian 12"},"content":{"rendered":"<p>\u00a0<\/p>\n<\/p>\n<header>\n<h1>\u00a0<\/h1>\n<\/header>\n<article>\n<section>\n<h2>Introduction<\/h2>\n<p>GitLab Community Edition (CE) is a powerful open-source DevOps platform that provides version control, CI\/CD capabilities, and collaboration features. This guide will walk you through installing GitLab CE using Docker on Debian 12, making it easy to manage your projects. This setup is ideal for those utilizing a  for development and deployment.<\/p>\n<\/section>\n<section>\n<h2>Prerequisites<\/h2>\n<ul>\n<li>A server running Debian 12<\/li>\n<li>Root or sudo access to the server<\/li>\n<li>Docker installed on your system<\/li>\n<\/ul>\n<\/section>\n<section>\n<h2>Step 1: Update Your System<\/h2>\n<p>Before installing GitLab, ensure your system is updated:<\/p>\n<pre><code>sudo apt update &amp;&amp; sudo apt upgrade -y<\/code><\/pre>\n<\/section>\n<section>\n<h2>Step 2: Install Docker<\/h2>\n<p>If you haven&#8217;t installed Docker yet, you can do so by running the following commands:<\/p>\n<pre><code>sudo apt install apt-transport-https ca-certificates curl software-properties-common -y\r\ncurl -fsSL https:\/\/download.docker.com\/linux\/debian\/gpg | sudo apt-key add -\r\nsudo add-apt-repository \"deb [arch=amd64] https:\/\/download.docker.com\/linux\/debian $(lsb_release -cs) stable\"\r\nsudo apt update\r\nsudo apt install docker-ce -y<\/code><\/pre>\n<p>After installation, start and enable the Docker service:<\/p>\n<pre><code>sudo systemctl start docker\r\nsudo systemctl enable docker<\/code><\/pre>\n<\/section>\n<section>\n<h2>Step 3: Install Docker Compose<\/h2>\n<p>Next, install Docker Compose, which is required to run GitLab:<\/p>\n<pre><code>sudo curl -L \"https:\/\/github.com\/docker\/compose\/releases\/latest\/download\/docker-compose-$(uname -s)-$(uname -m)\" -o \/usr\/local\/bin\/docker-compose\r\nsudo chmod +x \/usr\/local\/bin\/docker-compose<\/code><\/pre>\n<p>Verify the installation:<\/p>\n<pre><code>docker-compose --version<\/code><\/pre>\n<\/section>\n<section>\n<h2>Step 4: Create a GitLab Docker Compose File<\/h2>\n<p>Create a directory for GitLab and navigate into it:<\/p>\n<pre><code>mkdir ~\/gitlab\r\ncd ~\/gitlab<\/code><\/pre>\n<p>Create a <code>docker-compose.yml<\/code> file:<\/p>\n<pre><code>nano docker-compose.yml<\/code><\/pre>\n<p>Add the following configuration to the file:<\/p>\n<pre><code>version: '3.1'\r\nservices:\r\n  gitlab:\r\n    image: 'gitlab\/gitlab-ce:latest'\r\n    restart: always\r\n    hostname: 'gitlab.example.com' # Replace with your domain or IP\r\n    environment:\r\n      GITLAB_OMNIBUS_CONFIG: |\r\n        external_url 'http:\/\/gitlab.example.com' # Replace with your domain or IP\r\n    ports:\r\n      - '80:80'\r\n      - '443:443'\r\n      - '22:22'\r\n    volumes:\r\n      - '.\/gitlab-config:\/etc\/gitlab'\r\n      - '.\/gitlab-logs:\/var\/log\/gitlab'\r\n      - '.\/gitlab-data:\/var\/opt\/gitlab'<\/code><\/pre>\n<p>Replace <code>gitlab.example.com<\/code> with your actual domain name or IP address.<\/p>\n<\/section>\n<section>\n<h2>Step 5: Start GitLab<\/h2>\n<p>Run the following command to start GitLab:<\/p>\n<pre><code>sudo docker-compose up -d<\/code><\/pre>\n<p>This command will download the necessary Docker images and start the GitLab service.<\/p>\n<\/section>\n<section>\n<h2>Step 6: Access GitLab<\/h2>\n<p>Once GitLab is running, you can access it by navigating to <code>http:\/\/gitlab.example.com<\/code> in your web browser. The initial setup will prompt you to set a password for the <code>root<\/code> user.<\/p>\n<\/section>\n<section>\n<h2>Step 7: Conclusion<\/h2>\n<p>You have successfully installed GitLab CE using Docker on Debian 12. This setup is perfect for managing your projects effectively, especially when utilizing a . For additional server hosting options, explore various  solutions, including <a href=\"https:\/\/ie.netcloud24.com\">Windows VPSVirtual Private Server Hosting<\/a> and <a href=\"https:\/\/ie.netcloud24.com\">Windows VPS Hosting UK<\/a>.<\/p>\n<\/section>\n<\/article>\n<footer>\n<p>\u00a9 2024 GitLab Installation Tutorial. All rights reserved.<\/p>\n<\/footer>\n<div class=\"post-author-box\" style=\"border-top:1px solid #ddd;margin-top:20px;padding-top:15px;\">\n<p><strong>Author:<\/strong> \u0141ukasz Bodziony<\/p>\n<p><strong>Website:<\/strong> <a href=\"https:\/\/ca.netcloud24.com\" target=\"_blank\" rel=\"dofollow\">Windows VPS<\/a><\/p>\n<p><em>\u0141ukasz Bodziony is the CEO and founder of <a href=\"https:\/\/netcloud24.com\" target=\"_blank\" rel=\"dofollow\">NETCLOUD24<\/a>, a global VPS hosting brand proudly originating from Poland. With extensive experience in cloud computing, virtualization, and server management, he delivers high-performance <strong>Windows VPS<\/strong> and <strong>Remote Desktop Services (RDS)<\/strong> solutions to clients across Europe, North America, and beyond.<\/em><\/p>\n<p><em>His expertise covers a wide range of technologies, including <strong>Microsoft Azure<\/strong>, <strong>Proxmox VE<\/strong>, <strong>Amazon Web Services (AWS)<\/strong>, and numerous other virtualization and cloud platforms.<\/em><\/p>\n<p><em>Beyond running his hosting business, \u0141ukasz also provides <strong>professional paid server configuration and optimization services<\/strong> for companies and individuals. Outside of work, he is dedicated to caring for his children and building a secure future for them.<\/em><\/p>\n<p><em>If you are interested in working with him or need expert assistance with your hosting, cloud environment, or server setup, feel free to reach out via <a href=\"https:\/\/ca.netcloud24.com\" target=\"_blank\" rel=\"dofollow\">Windows VPS<\/a>.<\/em><\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u00a0 \u00a0 Introduction GitLab Community Edition (CE) is a powerful open-source DevOps platform that provides version control, CI\/CD capabilities, and collaboration features. This guide will walk you through\u2026<\/p>\n","protected":false},"author":1,"featured_media":3421,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":"","footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[],"tags":[14,12,11,23,20,21,22,17,7,8,6,10,18,19,15,24,16,5,13,9],"class_list":["post-2781","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-cheapvps","tag-cloudvps","tag-hostingvps","tag-rds","tag-rdscal","tag-remotedesktop","tag-remotedesktopvps","tag-servervps","tag-ukvps","tag-virtualserver","tag-vpshosting","tag-vpsserver","tag-vpssolutions","tag-vpswindows","tag-vpswithwindows","tag-windowsrds","tag-windowsserver","tag-windowsvps","tag-windowsvpshosting","tag-windowsvpsuk"],"jetpack_publicize_connections":[],"_links":{"self":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts\/2781","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/comments?post=2781"}],"version-history":[{"count":0,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts\/2781\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/media\/3421"}],"wp:attachment":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/media?parent=2781"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/categories?post=2781"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/tags?post=2781"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}