Docker
Container runtime
Dev / ToolsFree
Lightweight Git service
The script is free · VPS from $3.19 per month · installs in about 60 seconds
root@vps:~# command -v docker >/dev/null || curl -fsSL https://get.docker.com | sh; docker run -d --name gitea --restart always -p 3000:3000 -p 222:22 -e USER_UID=1000 -e USER_GID=1000 -v gitea-data:/data docker.gitea.com/gitea:latest
✓ Gitea 28.0.0 installed · about 60 seconds
root@vps:~#
Gitea is a lightweight Git service, your own GitHub or GitLab alternative: repositories, issues, pull requests, wiki and releases. Written in Go and runs even on the smallest server.
You need your own Git server when code can't live in someone else's cloud or you want your own CI/CD processes. Gitea Actions is compatible with GitHub Actions syntax, and there's also a package and Docker image registry.
The command runs the official Docker image with an SQLite database. For a larger team you can connect PostgreSQL or MySQL.
For Gitea: at least 1 vCPU, 3 GB RAM and 30 GB NVMe.
Three steps in the bot or one command over SSH; installation takes about 60 seconds.
Open @ExpressHost_bot and pay for a VPS. The server will be ready in about 60 seconds.
At the “Add-ons” step pick the script from the library, or run it later: Server settings → Scripts.
http://server-IP:3000 and complete the initial setupThe bot will send the server address and login details to the chat.
Connect to the server as root and run the command. Supported systems: Ubuntu 22.04, Ubuntu 24.04, Debian 12.
command -v docker >/dev/null || curl -fsSL https://get.docker.com | sh; docker run -d --name gitea --restart always -p 3000:3000 -p 222:22 -e USER_UID=1000 -e USER_GID=1000 -v gitea-data:/data docker.gitea.com/gitea:latest| Port | Protocol | Purpose |
|---|---|---|
| 3000 | tcp | Web UI and HTTP(S) cloning |
| 222 | tcp | SSH for git clone/push (port 22 in the container) |
http://server-IP:3000 and complete the initial setupDidn’t find an answer? Message @ExpressHost_SupportBot.
A small team works comfortably on 1 vCPU and 3 GB. If you run Actions runners on the same server, get more CPU and RAM.
docker pull docker.gitea.com/gitea:latest, then recreate the container with the same command. Back up the volume before a major update.
In the gitea-data Docker volume (folder /data in the container): repositories, database and app.ini.
Gitea installs at checkout — in the bot.
Netherlands, Amsterdam
$3.49/mo
$0.12 for 24 hours · $0.87 for 7 days
Pick Gitea at the “Scripts” step when you order the server.
Germany, Frankfurt
$4.49/mo
$0.16 for 24 hours · $1.12 for 7 days
Pick Gitea at the “Scripts” step when you order the server.
Poland, Warsaw
$3.19/mo
$0.11 for 24 hours · $0.80 for 7 days
Pick Gitea at the “Scripts” step when you order the server.
Estonia, Tallinn
$3.96/mo
$0.14 for 24 hours · $0.99 for 7 days
Pick Gitea at the “Scripts” step when you order the server.