Skip to content

Introduction

Accelero is an application that automates Docker deployments seamlessly with zero downtime by leveraging a GitOps strategy. It is a container-based tool that listens for webhooks from your CI pipeline and updates your service with the new image. It is designed to be simple to use and easy to integrate with your existing CI/CD pipeline.

Using Accelero is as simple as pushing your Docker image to your registry. After that, Accelero gets a webhook trigger and takes care of the rest by gracefully updating your service with the new image and shutting down the old one.

$ docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED          STATUS                    PORTS                    NAMES
37ad1f1abe88   arbianshkodra/accelero   "./accelero"             4 seconds ago    Up 4 seconds              0.0.0.0:8000->8000/tcp   accelero
a1edf7ab524e   nginx:1.26.1             "/docker-entrypoint.…"   12 minutes ago   Up 12 minutes (healthy)   80/tcp                   web_0_1724414427072913000
7fe4b38dd103   traefik:v2.9             "/entrypoint.sh --ap…"   12 minutes ago   Up 12 minutes             0.0.0.0:80->80/tcp       traefik_0_1724414406263150000

As you can see, Accelero is running and listening on port 8000. You can now push your Docker image to your registry, and Accelero will take care of the rest. To be able to route traffic to your service, you need to configure a reverse proxy like Traefik, but that will be provided by Accelero in the future. On the next section, we will see how to get started with Accelero.

Sample GitOps Repository

A sample is located within this repo's directory samples. Here is a GitOps repository available where you can fork it and use it as a template for your own projects. This repository will contain a docker-compose.yaml file and a sample.env file with the necessary configuration. You can use this repository to get started with Accelero and automate your deployments with zero downtime.