Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 1 addition & 48 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,54 +32,7 @@ In summary, the setup process involves the following steps:
**ggbridge** is distributed as a Distroless Docker image based on Wolfi OS, ensuring minimal dependencies and enhanced security.
Additionaly, a **shell** variant of the Docker image is available, this version includes additional tools and allows you to connect to the container via a shell, facilitating troubleshooting and debugging during development or integration.

The project offers two deployment methods:

- **Docker Deployment**: Ideal for local testing or simpler use cases.
- **Helm Chart Deployment**: The preferred method for production environments, offering enhanced configurability and scalability for Kubernetes setups.

### Docker deployment

> [!WARNING]
> Please consider that [Docker deployment](#docker-deployment) mode is intended for testing purposes. We highly recommend using [Helm deployment](#helm-deployment) mode.

Deploy the ggbridge client via Docker Compose by performing the following actions:

- Create `docker-compose.yml` file

> [!IMPORTANT]
> GGBridge is designed by default to work as HA, so it needs `3` client deployments to work properly. Ensure `replicas: 3` in your `docker-compose.yml` file. If you lower the replica count, it may result in an unstable bridge.
>
> ```yaml
> services:
> client:
> deploy:
> replicas: 3
> ```

```yaml
name: ggbridge

services:
client:
image: gitguardian/ggbridge:latest-shell
environment:
SERVER_ADDRESS: <my-subdomain>.ggbridge.gitguardian.com
TLS_ENABLED: 'true'
deploy:
replicas: 3
volumes:
- ./tls/ca.crt:/etc/ggbridge/tls/ca.crt:ro
- ./tls/tls.crt:/etc/ggbridge/tls/client.crt:ro
- ./tls/tls.key:/etc/ggbridge/tls/client.key:ro
- ./docker/nginx/nginx.local.conf:/etc/ggbridge/nginx.conf
restart: on-failure
```

- Run `docker-compose`

```shell
docker compose up -d
```
The project can be deployed on Kubernetes-like infrastructure (k0s, k3s, Talos, EKS, GKE, AKS...). GGBridge leverages **Helm Chart Deployment** which is an industry standard method for production environements, offering enhanced configurability and scalability for Kubernetes setups.

### Helm deployment

Expand Down