Get in Touch

Course Outline

Source Code Sovereignty

  • Understanding why cloud Git platforms may expose proprietary code and trade secrets.
  • Gitea architecture compared with GitHub, GitLab, and Forgejo.
  • Considerations regarding licensing, terms of service, and data export.

Installation and Configuration

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

Repository Management

  • Creating organisations, teams, and repositories.
  • Implementing branch protection, required reviews, and signed commits.
  • Utilising issue tracking, labels, milestones, and Kanban boards.
  • Hosting wikis and release artefacts.

CI/CD with Gitea Actions

  • Enabling Gitea Actions and registering act runners.
  • Writing workflow YAML files for build, test, and deployment stages.
  • Ensuring security for self-hosted runners and container isolation.
  • Utilising artefact caching and matrix builds.

Migration from Cloud Forges

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

Authentication and Access Control

  • Integrating with LDAP, Active Directory, and OpenID Connect.
  • Managing two-factor authentication and deployment tokens.
  • Defining repository visibility scopes: public, internal, and private.

Security and Compliance

  • Enforcing commit signing using GPG and SSH keys.
  • Maintaining audit logs for repository access and administrative changes.
  • Implementing dependency scanning and configuring vulnerability webhook alerts.

Maintenance and Scaling

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

Requirements

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

Audience

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

Number of participants


Price per participant

Testimonials (2)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories