{"id":2580,"date":"2023-12-10T18:25:27","date_gmt":"2022-05-21T19:56:30","guid":{"rendered":""},"modified":"2025-02-02T00:46:18","modified_gmt":"2025-02-01T23:46:18","slug":"how-to-install-gitbucket-with-nginx-on-ubuntu-20-04-lts","status":"publish","type":"post","link":"https:\/\/netcloud24.com\/knowledgebase\/how-to-install-gitbucket-with-nginx-on-ubuntu-20-04-lts\/","title":{"rendered":"Linux VPS &#038; VPS Windows Setup Guide | NetCloud24 GitBucket with Nginx on Ubuntu 20.04 LTS"},"content":{"rendered":"<p>\u00a0<\/p>\n<\/p>\n<h1>\u00a0<\/h1>\n<p>GitBucket is an open-source Git platform similar to GitHub, written in Scala, that allows you to manage Git repositories on your own server. In this guide, we will walk you through how to install GitBucket with Nginx as a reverse proxy on Ubuntu 20.04 LTS. This setup works well whether you\u2019re using a  or other VPS hosting environments.<\/p>\n<h2>Prerequisites<\/h2>\n<p>Before starting, ensure you have the following:<\/p>\n<ul>\n<li>An Ubuntu 20.04 LTS server, which could be hosted on a <a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\" rel=\"follow\">UK Windows VPS<\/a>, <a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\" rel=\"follow\">Windows VPSVirtual Private Servers<\/a>, or another <a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\" rel=\"follow\">Windows VPS Hosting UK<\/a> environment.<\/li>\n<li>Root or sudo privileges on your server.<\/li>\n<li>A domain name pointing to your server&#8217;s IP address (optional but recommended).<\/li>\n<\/ul>\n<h2>Step 1: Update Your System<\/h2>\n<p>Start by updating your system packages to ensure everything is up to date. Run the following command:<\/p>\n<pre><code>sudo apt update &amp;&amp; sudo apt upgrade<\/code><\/pre>\n<h2>Step 2: Install Java (OpenJDK)<\/h2>\n<p>GitBucket requires Java to run. Install OpenJDK 11 with the following command:<\/p>\n<pre><code>sudo apt install openjdk-11-jdk -y<\/code><\/pre>\n<p>After installation, verify that Java is installed by running:<\/p>\n<pre><code>java -version<\/code><\/pre>\n<p>You should see the version output for OpenJDK 11.<\/p>\n<h2>Step 3: Install GitBucket<\/h2>\n<p>Next, download the latest version of GitBucket from the official website. Navigate to your home directory and use <code>wget<\/code> to download the GitBucket WAR file:<\/p>\n<pre><code>cd \/opt\r\nsudo wget https:\/\/github.com\/gitbucket\/gitbucket\/releases\/download\/4.37.1\/gitbucket.war<\/code><\/pre>\n<p>Create a dedicated directory for GitBucket and move the downloaded file:<\/p>\n<pre><code>sudo mkdir \/opt\/gitbucket\r\nsudo mv gitbucket.war \/opt\/gitbucket<\/code><\/pre>\n<h2>Step 4: Create a Systemd Service for GitBucket<\/h2>\n<p>To ensure that GitBucket starts automatically when your server reboots, create a systemd service file:<\/p>\n<pre><code>sudo nano \/etc\/systemd\/system\/gitbucket.service<\/code><\/pre>\n<p>Add the following content to the file:<\/p>\n<pre><code>[Unit]\r\nDescription=GitBucket Service\r\nAfter=syslog.target\r\n\r\n[Service]\r\nExecStart=\/usr\/bin\/java -jar \/opt\/gitbucket\/gitbucket.war\r\nUser=root\r\nRestart=always\r\n\r\n[Install]\r\nWantedBy=multi-user.target<\/code><\/pre>\n<p>Save and close the file, then reload the systemd manager and start GitBucket:<\/p>\n<pre><code>sudo systemctl daemon-reload\r\nsudo systemctl start gitbucket\r\nsudo systemctl enable gitbucket<\/code><\/pre>\n<h2>Step 5: Install Nginx<\/h2>\n<p>GitBucket runs on port 8080 by default, but it&#8217;s a good practice to set up Nginx as a reverse proxy to serve GitBucket on port 80 (HTTP) or 443 (HTTPS). Install Nginx with the following command:<\/p>\n<pre><code>sudo apt install nginx -y<\/code><\/pre>\n<p>After installation, start and enable Nginx:<\/p>\n<pre><code>sudo systemctl start nginx\r\nsudo systemctl enable nginx<\/code><\/pre>\n<h2>Step 6: Configure Nginx as a Reverse Proxy for GitBucket<\/h2>\n<p>Next, create a new Nginx configuration file for GitBucket:<\/p>\n<pre><code>sudo nano \/etc\/nginx\/sites-available\/gitbucket<\/code><\/pre>\n<p>Add the following configuration, replacing <code>your-domain.com<\/code> with your actual domain:<\/p>\n<pre><code>server {\r\n    listen 80;\r\n    server_name your-domain.com;\r\n\r\n    location \/ {\r\n        proxy_pass http:\/\/localhost:8080;\r\n        proxy_set_header Host $host;\r\n        proxy_set_header X-Real-IP $remote_addr;\r\n        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\r\n        proxy_set_header X-Forwarded-Proto $scheme;\r\n    }\r\n}<\/code><\/pre>\n<p>Save and close the file, then enable the site and restart Nginx:<\/p>\n<pre><code>sudo ln -s \/etc\/nginx\/sites-available\/gitbucket \/etc\/nginx\/sites-enabled\/\r\nsudo systemctl restart nginx<\/code><\/pre>\n<h2>Step 7: Access GitBucket<\/h2>\n<p>Now, you can access GitBucket by visiting <code>http:\/\/your-domain.com<\/code> or <code>http:\/\/your-server-ip<\/code> in a web browser. The default login credentials are:<\/p>\n<ul>\n<li>Username: <code>root<\/code><\/li>\n<li>Password: <code>root<\/code><\/li>\n<\/ul>\n<p>It is highly recommended to change the root password after your first login.<\/p>\n<h2>Step 8: (Optional) Enable SSL with Let&#8217;s Encrypt<\/h2>\n<p>To secure your GitBucket instance with SSL, you can use Let&#8217;s Encrypt. First, install Certbot:<\/p>\n<pre><code>sudo apt install certbot python3-certbot-nginx -y<\/code><\/pre>\n<p>Then, generate and install the SSL certificate by running the following command:<\/p>\n<pre><code>sudo certbot --nginx -d your-domain.com<\/code><\/pre>\n<p>Follow the prompts to complete the SSL installation. Certbot will automatically configure Nginx to redirect HTTP traffic to HTTPS.<\/p>\n<h2>Conclusion<\/h2>\n<p>By following these steps, you have successfully installed GitBucket with Nginx as a reverse proxy on Ubuntu 20.04 LTS. Whether you&#8217;re hosting on a  or other VPS solutions like <a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\" rel=\"follow\">Microsoft SQL VPS Windows<\/a>, GitBucket provides a flexible and powerful platform for managing Git repositories.<\/p>\n<footer>\n<p>For more VPS hosting options, visit . They offer a variety of <a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\" rel=\"follow\">Windows VPSVirtual Private Servers<\/a> and <a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\" rel=\"follow\">Windows VPS Hosting UK<\/a> solutions tailored to your needs.<\/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 GitBucket is an open-source Git platform similar to GitHub, written in Scala, that allows you to manage Git repositories on your own server. In this guide,\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-2580","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\/2580","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=2580"}],"version-history":[{"count":0,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts\/2580\/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=2580"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/categories?post=2580"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/tags?post=2580"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}