An Ansible Playbook for deploying your own self-hosted Gitea instance
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Theodotos Andreou fd562c3235 Initial Commit 10 months ago
templates Initial Commit 10 months ago
vars Initial Commit 10 months ago
.gitignore Initial Commit 10 months ago
LICENSE Initial Commit 10 months ago Initial Commit 10 months ago
deploy_gitea.yml Initial Commit 10 months ago

Setting up a Gitea code hosting platform

Gitea is a self-hosted Git-based Code Hosting Platform and a nice alternative to Github and other proprietary services. You can use this Ansible Playbook to host your own Code Hosting Platform under your own control.

This setup offers:

  • Gitea
  • PostgreSQL backend
  • Nginx reverse proxy
  • Fail2Ban Gitea protection
  • HTTPS by Let’s Encrypt


  • A Debian or Ubuntu machine.
  • A publicly available FQDN:	300	IN	A

Deploy gitea

Clone the repository:

$ git clone
$ cd ansible-deploy-gitea

Prepare a vars/all.yml file (you can use vars/all.yml.example as reference):

# vars/all.yml
gitea_db: giteadb
gitea_db_user: giteadbuser
gitea_version: 1.4.2

Adjusts the host(s) in deploy_gitea.yml and run the Playbook:

$ ansible-playbook deploy_gitea.yml

When done rush to First one to create an account gets to be an admin!