mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2024-11-13 00:11:05 +01:00
35 lines
1.8 KiB
Markdown
35 lines
1.8 KiB
Markdown
# Docker-GitLab Ansible Role README.md
|
|
|
|
## Overview
|
|
This Ansible role is designed for setting up and managing a GitLab server running in a Docker container. It automates the process of installing GitLab, configuring its environment, and managing dependencies such as a PostgreSQL database and an Nginx reverse proxy.
|
|
|
|
## Features
|
|
- **GitLab Installation**: Automatically deploys GitLab using Docker.
|
|
- **External PostgreSQL Database**: Configures GitLab to use an external PostgreSQL database.
|
|
- **Nginx Reverse Proxy Integration**: Includes tasks for setting up an Nginx reverse proxy for GitLab.
|
|
- **Customizable Configuration**: Variables and templates allow for easy customization.
|
|
|
|
## Requirements
|
|
- Docker and Docker Compose installed on the target machine.
|
|
- Ansible for automation.
|
|
|
|
## Role Variables
|
|
Variables are defined in `vars/main.yml`. Key variables include:
|
|
- `docker_compose_instance_directory`: Directory for Docker Compose instances.
|
|
- `database_instance`, `database_host`, `database_databasename`, `database_username`, `database_password`: Database configuration variables.
|
|
- `database_version`: PostgreSQL version, with a default fallback.
|
|
|
|
## Handlers
|
|
- `recreate gitlab`: Restarts GitLab using Docker Compose when changes are detected.
|
|
|
|
## Dependencies
|
|
- `nginx-docker-reverse-proxy`: A role for setting up an Nginx reverse proxy for GitLab.
|
|
|
|
## Template Files
|
|
- `docker-compose.yml.j2`: Jinja2 template for the Docker Compose configuration.
|
|
- Additional templates for database and proxy configuration.
|
|
|
|
## Usage
|
|
Include this role in your Ansible playbooks and specify the necessary variables. Run the playbook to deploy and configure GitLab in a Docker environment.
|
|
|
|
For a detailed walkthrough and explanation of this role, refer to the conversation at [ChatGPT Session Transcript](https://chat.openai.com/share/1b0147bf-d4de-4790-b8ed-c332aa4e3ce3). |