Files
EZ-Homelab/docs/service-docs/gitlab.md
kelinfoxy cba45556c7 Complete documentation refactoring with 57 service docs
- Refactored README.md, getting-started.md, quick-reference.md
- Enhanced setup-homelab.sh with 9-step automated process
- Created services-overview.md with all stacks
- Added comprehensive documentation for 57 services in docs/service-docs/
- All services include: overview, configuration, resources, educational content
- Coverage: Core, Infrastructure, Dashboards, Media, Media-Extended, Home Assistant, Productivity, Utilities, Monitoring, Development stacks
- Educational focus with links to tutorials, videos, and guides
2026-01-12 18:03:12 -05:00

134 lines
3.6 KiB
Markdown

# GitLab - DevOps Platform
## Table of Contents
- [Overview](#overview)
- [What is GitLab?](#what-is-gitlab)
- [Why Use GitLab?](#why-use-gitlab)
- [Configuration in AI-Homelab](#configuration-in-ai-homelab)
- [Official Resources](#official-resources)
- [Docker Configuration](#docker-configuration)
## Overview
**Category:** DevOps Platform
**Docker Image:** [gitlab/gitlab-ce](https://hub.docker.com/r/gitlab/gitlab-ce)
**Default Stack:** `development.yml`
**Web UI:** `http://SERVER_IP:8929`
**SSH:** Port 2224
**Ports:** 8929, 2224
**Resource Requirements:** 4GB+ RAM
## What is GitLab?
GitLab is a complete DevOps platform - Git hosting, CI/CD, issue tracking, container registry, and more in one application. It's the open-source alternative to GitHub Enterprise, providing everything needed for modern software development.
### Key Features
- **Git Repositories:** Unlimited repos
- **CI/CD:** GitLab Runner integration
- **Issue Tracking:** Project management
- **Container Registry:** Docker image hosting
- **Wiki:** Per-project documentation
- **Code Review:** Merge requests
- **Snippets:** Code sharing
- **Auto DevOps:** Automated CI/CD
- **Security Scanning:** Built-in security
- **Free & Open Source:** CE edition
## Why Use GitLab?
1. **All-in-One:** Git + CI/CD + more
2. **Self-Hosted:** Private code platform
3. **CI/CD Included:** No separate service
4. **Container Registry:** Host Docker images
5. **Issue Tracking:** Built-in project management
6. **GitHub Alternative:** More features included
7. **Active Development:** Regular updates
## Configuration in AI-Homelab
```
/opt/stacks/development/gitlab/
config/ # GitLab configuration
logs/ # Application logs
data/ # Git repositories, uploads
```
**Warning:** GitLab is resource-intensive (4GB+ RAM minimum).
## Official Resources
- **Website:** https://about.gitlab.com
- **Documentation:** https://docs.gitlab.com
- **CI/CD Docs:** https://docs.gitlab.com/ee/ci
## Docker Configuration
```yaml
gitlab:
image: gitlab/gitlab-ce:latest
container_name: gitlab
restart: unless-stopped
hostname: gitlab.${DOMAIN}
networks:
- traefik-network
ports:
- "8929:80"
- "2224:22"
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://gitlab.${DOMAIN}'
gitlab_rails['gitlab_shell_ssh_port'] = 2224
gitlab_rails['time_zone'] = 'America/New_York'
volumes:
- /opt/stacks/development/gitlab/config:/etc/gitlab
- /opt/stacks/development/gitlab/logs:/var/log/gitlab
- /opt/stacks/development/gitlab/data:/var/opt/gitlab
shm_size: '256m'
labels:
- "traefik.enable=true"
- "traefik.http.routers.gitlab.rule=Host(`gitlab.${DOMAIN}`)"
```
**Note:** First startup takes 5-10 minutes. GitLab needs significant resources.
## Summary
GitLab is your complete DevOps platform offering:
- Git repository hosting
- Built-in CI/CD pipelines
- Container registry
- Issue tracking
- Wiki and documentation
- Code review (merge requests)
- Security scanning
- Free and open-source
**Perfect for:**
- Private Git hosting
- CI/CD pipelines
- Team development
- DevOps workflows
- Container image hosting
- Project management
- Self-hosted GitHub alternative
**Key Points:**
- Requires 4GB+ RAM
- All-in-one DevOps platform
- Built-in CI/CD
- Container registry included
- First startup slow (5-10 min)
- SSH on port 2224
- Resource intensive
**Remember:**
- Needs significant resources
- Initial setup takes time
- Get root password from logs
- Configure GitLab Runner for CI/CD
- Container registry built-in
- Regular backups important
- Update carefully (read changelogs)
GitLab provides enterprise DevOps at home!