# Premiers pas

## Prérequis

- Une machine Ubuntu 22.04

## Étapes

### Installation

1. Installer le serveur Redis

    ```bash
    apt update
    apt install redis
    ```

2. Sur votre machine Ubuntu, télécharger les dernières versions disponibles des paquets Debian correspondant à votre architecture sur la page ["Versions"](https://forge.cadoles.com/Cadoles/bouncer/releases) du projet:
    - `bouncer-bin_<version>_linux_<arch>.deb`
    - `bouncer-proxy_<version>_linux_<arch>.deb`
    - `bouncer-admin_<version>_linux_<arch>.deb`


3. Installer les paquets Debian

    ```bash
    # Commencer par le paquet bouncer-bin
    dpkg -i "bouncer-bin_<version>_linux_<arch>.deb"

    # Puis installer les paquets de services
    dpkg -i "bouncer-proxy_<version>_linux_<arch>.deb"
    dpkg -i "bouncer-admin_<version>_linux_<arch>.deb"
    ```

4. Générer un jeton d'authentification pour le CLI d'administration

    ```bash
    bouncer --config /etc/bouncer/config.yml auth create-token --role writer --subject $(whoami) > .bouncer-token
    ```

5. Tester que le CLI est en capacité d'interroger l'API d'administration

    ```bash
    bouncer admin proxy query
    ```

    Un message équivalent à celui ci devrait s'afficher:

    ```
    +------+---------+--------+
    | NAME | ENABLED | WEIGHT |
    +------+---------+--------+
    +------+---------+--------+
    ```

### Créer un premier proxy

1. Créer un proxy vers https://www.cadoles.com via le CLI

    ```bash
    # Création du proxy nommé 'cadoles' vers https://www.cadoles.com
    bouncer admin proxy create --proxy-to https://www.cadoles.com --proxy-name cadoles
    ```

    Un message équivalent à celui ci devrait s'afficher:

    ```
    +---------+-------+-------------------------+---------+--------+-------------------------+-------------------------+
    | NAME    | FROM  | TO                      | ENABLED | WEIGHT | CREATEDAT               | UPDATEDAT               |
    +---------+-------+-------------------------+---------+--------+-------------------------+-------------------------+
    | cadoles | ["*"] | https://www.cadoles.com | false   | 0      | "2023-05-28T14:28:46... | "2023-05-28T14:28:46... |
    +---------+-------+-------------------------+---------+--------+-------------------------+-------------------------+
    ```


2. À ce stade, le proxy est créé mais encore inactif. Activer le proxy

    ```bash
    # Activation du proxy
    bouncer admin proxy update --proxy-name cadoles --proxy-enabled=true
    ```

    Un message équivalent à celui ci devrait s'afficher:

    ```
    +---------+-------+-------------------------+---------+--------+-------------------------+-------------------------+
    | NAME    | FROM  | TO                      | ENABLED | WEIGHT | CREATEDAT               | UPDATEDAT               |
    +---------+-------+-------------------------+---------+--------+-------------------------+-------------------------+
    | cadoles | ["*"] | https://www.cadoles.com | true    | 0      | "2023-05-28T14:28:46... | "2023-05-28T14:28:55... |
    +---------+-------+-------------------------+---------+--------+-------------------------+-------------------------+
    ```

3. Ouvrir la page `https://<ip_serveur>:8080/` dans un navigateur. Le site Cadoles s'affiche !

**Bravo, vous avez créé votre premier proxy avec Bouncer !**