Home Debian Installation Steps
Post
Cancel

Debian Installation Steps

Overview

This guide provides step-by-step instructions for installing Carrier on Debian operating systems.

Please find the hardware requirements by following the link.

Prerequisites

Before installing Carrier, you need to ensure that the following tools are installed on your Debian system:

After executing the installation commands, it is important to ensure that there are no errors. Please verify that the installation process completed successfully without encountering any issues.

Install Docker

1
2
sudo apt update
sudo apt install docker.io -y

Install Docker Compose:

  1. Ensure that you have Docker installed on your system. If Docker is not installed, you can refer to the previous instructions to install it.

  2. Download the Docker Compose binary into the /usr/local/bin directory:
    1
    
    sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
  3. Apply executable permissions to the Docker Compose binary:
    1
    
    sudo chmod +x /usr/local/bin/docker-compose
    
  4. Create a symbolic link for docker-compose in /usr/bin/docker-compose:
    1
    
    sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
    
  5. Verify that Docker Compose is installed correctly:
    1
    
    docker-compose --version
    

    Expected Output:

    1
    2
    
     [root@ip-172-31-26-250 ec2-user]# docker-compose --version
     Docker Compose version v2.18.1
    

Install Git Install

  • Check if Git is installed using the following command:
    1
    
    git --version
    
  • Otherwise, install it:
    1
    
    sudo apt install git -y
    

Install Make:

1
sudo apt install make -y

After completing these steps, you have successfully installed Docker, Docker Compose, Git, and Make tools on your Debian system.

Carrier Installation Steps

  1. Using root user clone the carrier-io centry repository to the /opt directory:
    1
    
    git clone https://github.com/carrier-io/centry.git -b beta-1.0 /opt/centry
    
  2. Navigate to the downloaded folder:
    1
    
    cd /opt/centry
    

    You need to use public IP to access Carrier

  3. Get the public IP of your system and set the CURRENT_IP variable to the defined value: For example, using next cmd:
    1
    
    export CURRENT_IP=$(curl -s ifconfig.me)
    
  4. Set parameters in .env and Makefile file

    4.1 Set IP (change DEV_IP and DIRECT_IP to CURRENT_IP):

    1
    2
    
     sed -i -e "s/\#DIRECT_IP=YOUR_IP_HERE/DIRECT_IP=$CURRENT_IP/g" Makefile
     sed -i -e "s/\$APP_IP/$CURRENT_IP/g" .env
    

    4.2 Set installation path in for CARRIER_PATH and VOLUMES_PATH in .env:

    1
    2
    3
    4
    5
    
     vi .env
     ....
     CARRIER_PATH=/opt/centry
     VOLUMES_PATH=/opt/centry/volumes
     ....
    
  5. Review list of default plugins in config file:
    1
    
    cat config/pylon.yml
    
  6. Launch the Carrier installer:
    1
    
    make up
    

    Expected Output:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
      [+] Running 15/15
      ✔ Network centry_pylon                    Created                                                                                                                                                                                                       0.2s
      ✔ Container carrier-redis                 Started                                                                                                                                                                                                      29.4s
      ✔ Container carrier-loki                  Started                                                                                                                                                                                                      29.4s
      ✔ Container carrier-influx                Started                                                                                                                                                                                                      29.7s
      ✔ Container carrier-minio                 Started                                                                                                                                                                                                      29.8s
      ✔ Container carrier-postgres              Started                                                                                                                                                                                                      29.7s
      ✔ Container carrier-rabbit                Started                                                                                                                                                                                                       1.6s
      ✔ Container centry-traefik-1              Started                                                                                                                                                                                                       1.5s
      ✔ Container carrier-vault                 Started                                                                                                                                                                                                       2.0s
      ✔ Container carrier-grafana               Started                                                                                                                                                                                                       1.9s
      ✔ Container carrier-interceptor_internal  Started                                                                                                                                                                                                       2.2s
      ✔ Container carrier-interceptor           Started                                                                                                                                                                                                       2.7s
      ✔ Container carrier-keycloak              Started                                                                                                                                                                                                       2.5s
      ✔ Container carrier-pylon-auth            Started                                                                                                                                                                                                       5.9s
      ✔ Container carrier-pylon                 Started                                                                                                                                                                                                       5.8s
    

    Verify that the main container is started:

    Packages downloading process takes ~5-10 minutes

    1
    
     docker logs -f carrier-pylon
    

    Expected Output:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
     INFO - pylon.core.tools.process - Stored in directory: /root/.cache/pip/wheels/e3/76/6f/c25be6a9e6cc9985b96e8c95997d46790242c6426ef68e754c
     INFO - pylon.core.tools.process - Successfully built jsonpath_rw
     INFO - pylon.core.tools.process - Installing collected packages: ply, decorator, jsonpath_rw
     INFO - pylon.core.tools.process - Successfully installed decorator-5.1.1 jsonpath_rw-1.4.0 ply-3.11
     INFO - plugins.auth_mappers.module - Initializing module
     INFO - plugins.auth_oidc.module - Initializing module
     INFO - plugins.auth_root.module - Initializing module auth_root
     INFO - pylon.core.tools.server - Starting Flask server
     * Tip: There are .env or .flaskenv files present. Do "pip install python-dotenv" to use them.
     WARNING - werkzeug -  * Debugger is active!
     INFO - werkzeug -  * Debugger PIN: 686-802-926
    

    Verify that no Docker containers have been restarted:

    1
    
     docker ps -a
    
  7. Once the installation is finished, open the following URL in a browser: http://<public DNS or IP>

  8. Log in to the Carrier web interface using the default credentials:
    • Username: admin
    • Password: admin

    Carrier login form

    You’re all set, then! Excellent Work!

Next Step: Create a Project in Carrier

Once you have completed the installation steps, you can proceed to create your first project in Carrier. The project allows you to organize and manage your performance and security tests.

Follow the guide on how to create a project in Carrier to get started.

Troubleshooting

  1. Restart carrier-pylon container
1
2
docker restart carrier-pylon
docker logs -f carrier-pylon

If something doesn’t work as expected, check the logs of the following containers for any errors:

1
2
3
docker logs -f carrier-keycloak
docker logs -f centry_traefik_1
docker logs -f carrier-pylon-auth

Uninstall

If the root volume was used as the hard drive, use the following commands to stop containers and remove all required artifacts:

1
2
3
docker-compose down
docker volume prune
docker network prune

If a mounted disk was used, manually delete all directories with images:

1
2
docker-compose down
sudo rm -rf /opt/docker
This post is licensed under CC BY 4.0 by the author.