Overview
This guide covers deploying Gitea as an LXC container on Proxmox VE. By the end of this walkthrough, you’ll have your own private Git server running entirely on your own hardware, with no dependency on GitHub, GitLab, or any third-party platform to host your code and future Hugo site repo.
Hardware / Requirements
- Proxmox VE already installed and running on your host.
- A few GB of free storage on your Proxmox datastore for the container.
🌐 Prerequisite: Before proceeding with the steps below, you must have Proxmox VE installed and fully optimized on your Mini PC. If you haven’t set up your hypervisor yet, please follow my step-by-step guide: Proxmox VE Installation.
Procedure
Step 1: Create the LXC Container
- Log into your Proxmox VE web UI.
- Click Create CT in the top-right corner.
- Choose a hostname (e.g.
gitea) and set a root password. - Select a Debian or Ubuntu template for the container OS.
- Allocate resources — 1-2 vCPUs, 1-2GB RAM, and at least 8GB disk is enough for a personal Gitea instance.
- Configure the network to use a static IP (or a DHCP reservation) so the address doesn’t change later.
- Click Finish and start the container.
Step 2: Install Gitea Inside the Container
- Open the container’s console from the Proxmox UI.
- Update the system packages.
- Install Git and the required dependencies.
- Download the latest Gitea binary from the official releases page.
- Create a dedicated
gitsystem user to run the Gitea service. - Set up Gitea as a systemd service so it starts automatically on boot.
Step 3: Complete the Web Setup
- Open a browser and navigate to your container’s IP on port
3000. - Choose your database option (SQLite is enough for a personal/private instance).
- Set your Gitea Base URL, admin username, and password.
- Click Install Gitea to finish the setup.
- Log in with your new admin account and create your first private repository.