Get in Touch

Course Outline

Source Code Sovereignty

  • Understanding why cloud Git platforms may expose proprietary code and trade secrets.
  • Gitea architecture and comparisons with GitHub, GitLab, and Forgejo.
  • Licensing, terms-of-service implications, and data export considerations.

Installation and Configuration

  • Deploying via Docker Compose with PostgreSQL and Redis.
  • Installing the binary on Linux with a systemd service.
  • Configuring reverse proxies, TLS, and SSH ports.
  • Completing the initial setup wizard: database connection, admin account creation, and tuning app.ini.

Repository Management

  • Creating organizations, teams, and repositories.
  • Implementing branch protection, requiring code reviews, and enforcing signed commits.
  • Managing issue tracking, labels, milestones, and Kanban boards.
  • Utilizing the Wiki and hosting release artifacts.

CI/CD with Gitea Actions

  • Enabling Gitea Actions and registering act runners.
  • Writing workflow YAML files for build, test, and deploy processes.
  • Ensuring self-hosted runner security and container isolation.
  • Implementing artifact caching and matrix builds.

Migration from Cloud Forges

  • Mirroring and importing repositories from GitHub/GitLab.
  • Migrating issues, pull requests, and release notes.
  • Preserving commit signatures and GPG key trust.

Authentication and Access Control

  • Integrating LDAP, Active Directory, and OpenID Connect.
  • Setting up two-factor authentication and managing deploy tokens.
  • Configuring repository visibility: public, internal, and private scopes.

Security and Compliance

  • Enforcing commit signing with GPG and SSH keys.
  • Enabling audit logging for repository access and admin changes.
  • Implementing dependency scanning and receiving vulnerability webhook alerts.

Maintenance and Scaling

  • Developing backup strategies for Git data, issues, and attachments.
  • Optimizing the database and offloading attachments to S3.
  • Upgrading Gitea and managing breaking changes.

Requirements

  • Intermediate understanding of Git and version control concepts.
  • Knowledge of Linux server administration, including Docker.
  • Familiarity with CI/CD pipelines and webhooks.

Target Audience

  • Development teams looking to replace GitHub or GitLab.com.
  • Organizations requiring on-premise custody of their source code.
  • Government and defense contractors subject to code export restrictions.
 14 Hours

Testimonials (4)

Related Categories