Comment installer et configurer Buildbot sur CentOS 7

Buildbot est un outil d'intégration continue open source, basé sur Python, pour automatiser la création, les tests et le déploiement de logiciels. Buildbot se compose d'un ou plusieurs maîtres Buildbot et d'un certain nombre de travailleurs. Buildbot master ou Buildmaster a la commande centrale du système. Il est responsable de la gestion de l'environnement de construction, des travailleurs et prend toutes les décisions concernant l'envoi d'emplois aux travailleurs. Buildmaster détecte les modifications dans le référentiel de code et envoie les commandes ou les travaux aux travailleurs pour les exécuter. Les ouvriers exécutent les travaux et retournent le résultat au Buildmaster. Buildmaster notifie ensuite les développeurs via plusieurs canaux pris en charge. Dans ce tutoriel, nous allons installer Buildbot maître et travailleur sur CentOS 7. Nous allons également configurer l'authentification et Nginx en tant que proxy inverse sécurisé.

Conditions préalables

  • Une instance de serveur Vultr CentOS 7 avec au moins 1 Go de RAM.
  • Un utilisateur sudo .
  • Un nom de domaine enregistré pointait vers le serveur.

Pour ce didacticiel, nous utiliserons 192.168.1.1comme adresse IP publique et ci.example.comcomme nom de domaine pointé vers l'instance Vultr. Veuillez vous assurer de remplacer toutes les occurrences de l'exemple de nom de domaine et de l'adresse IP par celui-ci.

Mettez à jour votre système de base à l'aide du guide Comment mettre à jour CentOS 7 . Une fois votre système mis à jour, installez PostgreSQL.

Installer les dépendances Python

Installez Pip, qui est un gestionnaire de packages pour Python.

sudo yum -y install epel-release
sudo yum -y install python-pip gcc python-devel git
sudo pip install --upgrade pip

Installer PostgreSQL

Buildbot prend en charge plusieurs types de serveurs de bases de données tels que MySQL, PostgreSQL et SQLite. Dans ce tutoriel, nous utiliserons PostgreSQL pour héberger le serveur de base de données Buildbot.

PostgreSQL est un système de base de données relationnelle objet, connu pour sa stabilité et sa vitesse. Le yumréférentiel par défaut contient une ancienne version de PostgreSQL, alors ajoutez le référentiel PostgreSQL.

sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm

Installez le serveur de base de données PostgreSQL.

sudo yum -y install postgresql10-server postgresql10-contrib postgresql10 

Initialisez la base de données.

sudo /usr/pgsql-10/bin/postgresql-10-setup initdb

Démarrez le serveur PostgreSQL et activez-le pour démarrer automatiquement au démarrage.

sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10

Modifiez le mot de passe de l'utilisateur PostgreSQL par défaut.

sudo passwd postgres

Connectez-vous en tant qu'utilisateur PostgreSQL.

sudo su - postgres

Créez un nouvel utilisateur PostgreSQL pour Buildbot.

createuser bb_user

Vous pouvez utiliser n'importe quel nom d'utilisateur au lieu de bb_user, si vous préférez. PostgreSQL fournit le psqlshell pour exécuter des requêtes sur la base de données. Basculez vers le shell PostgreSQL.

psql

Définissez un mot de passe pour l'utilisateur nouvellement créé.

ALTER USER bb_user WITH ENCRYPTED password 'DBPassword';

Remplacez-le DBPasswordpar un mot de passe sécurisé.

Créez une nouvelle base de données pour l'installation de Buildbot.

CREATE DATABASE buildbot OWNER bb_user;

Sortez du psqlshell.

\q

Passez à l' sudoutilisateur.

exit

Modifiez le pg_hba.conffichier pour activer l'authentification basée sur MD5.

sudo nano /var/lib/pgsql/10/data/pg_hba.conf

Recherchez les lignes suivantes et modifiez les valeurs peeret ident, dans la METHODcolonne, en trustet md5respectivement.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

Une fois mise à jour, la configuration ressemblera au texte suivant.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Enregistrez le fichier et quittez l'éditeur. Installez l'adaptateur de base de données PostgreSQL pour Python.

sudo pip install psycopg2

Redémarrez PostgreSQL pour que les modifications prennent effet.

sudo systemctl restart postgresql-10

Installer Buildbot

Installez Buildbot à l'aide de Pip.

sudo pip install 'buildbot[bundle]' pyopenssl service_identity

La commande ci - dessus installera Buildbot avec buildbot-www, buildbot-workeret plusieurs plugins web tels que buildbot-waterfall-view.

Pour vous assurer que Buildbot a été installé avec succès, vous pouvez vérifier en vérifiant la version de Buildbot.

buildbot --version

La sortie doit ressembler au texte suivant.

[user@vultr ~]$ buildbot --version
Buildbot version: 0.9.15.post1
Twisted version: 17.9.0

Modifiez vos règles de pare-feu pour autoriser le port 8010. Buildbot utilise ce port pour écouter les requêtes Web.

sudo firewall-cmd --zone=public --add-port=8010/tcp --permanent
sudo firewall-cmd --reload

Configurer Buildbot Master

Créez un nouvel utilisateur non privilégié pour exécuter les processus maître et de travail Buildbot. Il n'est pas recommandé d'exécuter les services principaux Buildbot en tant rootqu'utilisateur.

sudo adduser buildbot
sudo passwd buildbot

Connectez-vous en tant buildbotqu'utilisateur nouvellement créé .

sudo su - buildbot

Configurez le maître Buildbot dans le /home/buildbot/masterrépertoire. Ce répertoire contiendra les fichiers de configuration, d'état et de journal de chaque build.

buildbot create-master --db 'postgresql://bb_user:DBPassword@localhost/buildbot' ~/master

Assurez-vous de remplacer les informations d'identification de l'utilisateur de la base de données dans la commande ci-dessus.

Remarque: Si vous souhaitez utiliser la base de données SQLite au lieu de PostgreSQL, omettez simplement l' --db 'postgresql://bb_user:DBpassword@localhost/buildbot'option. La base de données SQLite sera créée dans le même répertoire.

La commande ci-dessus créera le ~/masterrépertoire pour stocker les fichiers Buildmaster. Il écrira également les données dans la base de données PostgreSQL. Vous obtiendrez la sortie suivante.

[buildbot@vultr ~]$ buildbot create-master --db 'postgresql://bb_user:DBPassword@localhost/buildbot' ~/master
mkdir /home/buildbot/master
creating /home/buildbot/master/master.cfg.sample
creating database (postgresql://bb_user:DBPassword@localhost/buildbot)
buildmaster configured in /home/buildbot/master

Copiez l'exemple de fichier de configuration dans un fichier de configuration en direct.

cp ~/master/master.cfg.sample ~/master/master.cfg

Modifiez le fichier de configuration.

nano ~/master/master.cfg

Trouvez les lignes suivantes.

c['workers'] = [worker.Worker("example-worker", "pass")]
...

c['builders'].append(
    util.BuilderConfig(name="runtests",
      workernames=["example-worker"],
      factory=factory))
...

c['title'] = "Hello World CI"
c['titleURL'] = "https://buildbot.github.io/hello-world/"
...

c['buildbotURL'] = "http://localhost:8010/"
...

c['db'] = {
    'db_url' : "postgresql://bb_user:DBpassword@localhost/buildbot",
}

La configuration ci-dessus a une entrée pour un exemple de travailleur. Nous allons modifier l'exemple d'entrée pour le travailleur sur lequel nous allons travailler localhost. Remplacez le example-workerpar n'importe quel nom approprié pour le localhosttravailleur et remplacez-le passpar un autre mot de passe. Prenez note du nom et du mot de passe du travailleur, car nous en aurons besoin plus tard dans le didacticiel. Modifiez le nom du travailleur dans la liste des générateurs. Modifiez le nom de l'application et l'URL du projet en fonction de vos besoins.

Remplacez l'URL Buildbot par localhostvotre nom de domaine réel ou votre adresse IP publique. Vérifiez également que les informations de base de données dans le fichier de configuration correspondent à vos informations d'identification de base de données réelles.

À la fin du fichier, ajoutez c['buildbotNetUsageData'] = None. Ce paramètre désactivera l'envoi aux développeurs des informations sur la version du logiciel et des détails d'utilisation du plugin. Cependant, pour activer l'envoi des informations sur les utilisations, changez l'option en Full.

La configuration doit ressembler au texte suivant.

c['workers'] = [worker.Worker("localhost-worker", "Password123")]
...    

c['builders'].append(
    util.BuilderConfig(name="runtests",
      workernames=["localhost-worker"],
      factory=factory))
...

c['title'] = "My Application CI"
c['titleURL'] = "https://example.com/my-app"
...

c['buildbotURL'] = "http://192.168.1.1:8010/"
...

c['db'] = {
    'db_url' : "postgresql://bb_user:DBpassword@localhost/buildbot",
}
...

c['buildbotNetUsageData'] = None

Enregistrez le fichier et quittez l'éditeur. Recherchez des erreurs dans le fichier de configuration.

buildbot checkconfig ~/master

Si le fichier de configuration ne contient aucune erreur, vous verrez la sortie suivante.

[buildbot@vultr ~]$ buildbot checkconfig ~/master
Config file is good!

Maintenant que tout est correctement configuré, vous pouvez démarrer le maître Buildbot.

buildbot start ~/master

Vous verrez la sortie suivante.

[buildbot@vultr ~]$ buildbot start ~/master
Following twistd.log until startup finished..
The buildmaster appears to have (re)started correctly.

Maintenant que le maître Buildbot a démarré correctement, l'interface utilisateur Web est accessible à http://192.168.1.1:8010. Vous devriez voir l'interface Buildbot suivante.

Comment installer et configurer Buildbot sur CentOS 7

Configurer Buildbot Worker

Comme nous avons déjà modifié la configuration du travailleur dans ~/master/master.cfg, nous pouvons procéder à la création d'un nouveau travailleur.

buildbot-worker create-worker ~/worker localhost localhost-worker Password123

Assurez-vous que vous utilisez exactement le même nom de travailleur et le même mot de passe que ceux mentionnés dans le ~/master/master.cfgfichier. En cas de non-concordance dans le nom ou le mot de passe du travailleur, le travailleur ne pourra pas se connecter au maître Buildbot. Vous verrez la sortie suivante après une exécution réussie.

[buildbot@vultr ~]$ buildbot-worker create-worker ~/worker localhost example-worker pass
mkdir /home/buildbot/worker
mkdir /home/buildbot/worker/info
Creating info/admin, you need to edit it appropriately.
Creating info/host, you need to edit it appropriately.
Not creating info/access_uri - add it if you wish
Please edit the files in /home/buildbot/worker/info appropriately.
worker configured in /home/buildbot/worker

Les informations sur le travailleur sont stockées dans le /inforépertoire. Modifiez les informations administratives sur le développeur.

nano ~/worker/info/admin

Remplacez l'exemple de nom par votre nom et votre adresse e-mail réels.

Your Name <[email protected]>

Maintenant, ouvrez le fichier contenant des informations sur l'hôte.

nano ~/worker/info/host

Remplacez l'exemple d'instruction par les informations réelles sur le système hôte.

Localhost, CentOS 7

Les informations d'administrateur et d'hôte du travailleur sont uniquement utilisées pour informer les utilisateurs du système. Vous pouvez également ajouter des informations supplémentaires sur le système telles que la version Buildbot et la version Twisted.

Démarrez le travailleur.

buildbot-worker start ~/worker

La sortie ressemblera au texte suivant.

[buildbot@vultr ~]$ buildbot-worker start ~/worker
Following twistd.log until startup finished..
The buildbot-worker appears to have (re)started correctly.

Pour vérifier si le travailleur est enregistré, accédez à l'interface Web de Buildbot et accédez à Builds >> Workerspartir de la navigation de gauche. Vous devriez voir que le travailleur est prêt et prêt à construire.

Comment installer et configurer Buildbot sur CentOS 7

Pour exécuter un exemple de build, pour vérifier si le travailleur Buildbot s'exécute correctement, accédez à Builds >> Builders. Cliquez sur le runtestsnom du générateur pour ouvrir l'interface du générateur et cliquez sur le Forcebouton pour forcer une construction. Donnez votre nom et cliquez sur le Start Buildbouton pour démarrer la construction. Puisqu'il s'agit d'un exemple de test de build pour vérifier l'environnement Buildbot, il se terminera dans quelques secondes. Vous obtiendrez un message de réussite et le résultat de la construction.

Comment installer et configurer Buildbot sur CentOS 7

Configuration du service Systemd

Bien que le maître et le travailleur Buildbot puissent être facilement démarrés à l'aide des commandes ci-dessus, il est recommandé d'utiliser des unités Systemd pour exécuter et gérer les services Buildbot. Cela garantira qu'ils sont automatiquement démarrés au redémarrage et aux échecs du système.

Remarque: basculez à sudonouveau vers l' utilisateur en exécutant soit exitou su <username>. Désormais, toutes les commandes doivent être exécutées par l' sudoutilisateur.

Arrêtez le travailleur Buildbot et le service maître en cours d'exécution.

sudo su buildbot -c "buildbot stop /home/buildbot/master" 
sudo su buildbot -c "buildbot-worker stop ~/worker"

Créez un nouveau fichier d'unité Systemd pour le maître Buildbot.

sudo nano /etc/systemd/system/buildbot.service

Remplissez le fichier.

[Unit]
Description=BuildBot master service 
After=network.target

[Service]
Type=forking
User=buildbot 
Group=buildbot 
WorkingDirectory=/home/buildbot/master 
ExecStart=/usr/bin/buildbot start
ExecStop=/usr/bin/buildbot stop
ExecReload=/usr/bin/buildbot restart

[Install]
WantedBy=multi-user.target

Démarrez le maître Buildbot et activez-le pour démarrer automatiquement au démarrage.

sudo systemctl start buildbot
sudo systemctl enable buildbot

Créez un nouveau fichier d'unité Systemd pour le travailleur Buildbot.

sudo nano /etc/systemd/system/buildbot-worker.service

Remplissez le fichier.

[Unit]
Description=BuildBot worker service
After=network.target

[Service]
Type=forking
User=buildbot
Group=buildbot
WorkingDirectory=/home/buildbot/worker
ExecStart=/usr/bin/buildbot-worker start
ExecStop=/usr/bin/buildbot-worker stop
ExecReload=/usr/bin/buildbot-worker restart

[Install]
WantedBy=multi-user.target

Démarrez le travailleur Buildbot et activez-le pour démarrer automatiquement au démarrage.

sudo systemctl start buildbot-worker
sudo systemctl enable buildbot-worker

Vous pouvez vérifier l'état des services.

sudo systemctl status buildbot buildbot-worker

Si les services fonctionnent correctement, vous le verrez dans la sortie.

[user@vultr ~]$ sudo systemctl status buildbot buildbot-worker
● buildbot.service - BuildBot master service
...
Active: active (running) since Fri 2018-01-12 16:00:59 UTC; 1min 25s ago
...
Jan 12 16:00:59 vultr.guest systemd[1]: Started BuildBot master service.

● buildbot-worker.service - BuildBot worker service
...
Active: active (running) since Fri 2018-01-12 16:02:00 UTC; 24s ago
...
Jan 12 16:02:00 vultr.guest systemd[1]: Started BuildBot worker service.

Activation de l'authentification

Par défaut, l'authentification n'est pas activée dans l'interface Web de Buildbot. Pour les sites Internet, il est fortement recommandé de configurer l'authentification afin que seuls les utilisateurs autorisés puissent effectuer des tâches administratives. Pour configurer l'authentification, rouvrez le fichier de configuration maître Buildbot.

sudo su buildbot -c "nano /home/buildbot/master/master.cfg"

Ajoutez les lignes suivantes à la fin du fichier.

c['www']['authz'] = util.Authz(
       allowRules = [
           util.AnyEndpointMatcher(role="admins")
       ],
       roleMatchers = [
           util.RolesFromUsername(roles=['admins'], usernames=['admin_user'])
       ]
)
c['www']['auth'] = util.UserPasswordAuth({'admin_user': 'AdminPassword'})

Remplacez les deux occurrences de admin_userpar le nom d'utilisateur réel que vous souhaitez utiliser et AdminPasswordpar un mot de passe fort.

Recherchez les erreurs dans le fichier de configuration.

sudo su buildbot -c "buildbot checkconfig /home/buildbot/master"

Redémarrez le service maître Buildbot pour que les modifications prennent effet.

sudo systemctl restart buildbot

Parcourez à nouveau l'interface Web pour voir que les utilisateurs anonymes ne peuvent afficher que les détails de base sur le serveur de génération. Maintenant, connectez-vous en utilisant les informations d'identification définies dans le master.cfgfichier et vous verrez que toutes les autres fonctions administratives ne sont disponibles que pour l'utilisateur administrateur connecté.

Sécurisation de Buildbot avec Let's Encrypt SSL

Par défaut, Buildbot écoute le port 8010sur les connexions non sécurisées. Il HTTPSest recommandé de sécuriser l'interface Web avec pour garantir la sécurité des données pendant le transport du navigateur au serveur. Dans cette section du tutoriel, nous allons installer et sécuriser Nginx avec Let's Encrypt gratuitement les certificats SSL. Le serveur Web Nginx fonctionnera comme un proxy inverse pour transmettre les demandes entrantes au point de terminaison HTTP de Buildbot.

Installez Nginx.

sudo yum -y install nginx

Démarrez Nginx et activez-le pour démarrer automatiquement au démarrage.

sudo systemctl start nginx
sudo systemctl enable nginx

Installez Certbot, qui est l'application cliente de Let's Encrypt CA.

sudo yum -y install certbot

Avant de pouvoir demander les certificats, vous devez autoriser les ports 80et / 443ou la norme HTTPet les HTTPSservices via le pare-feu. Supprimez également le port 8010, qui écoute les connexions non sécurisées.

sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --zone=public --remove-port=8010/tcp --permanent
sudo firewall-cmd --reload

Remarque: Pour obtenir des certificats de Let's Encrypt CA, le domaine pour lequel les certificats doivent être générés doit être dirigé vers le serveur. Sinon, apportez les modifications nécessaires aux enregistrements DNS du domaine et attendez que le DNS se propage avant de refaire la demande de certificat. Certbot vérifie l'autorité de domaine avant de fournir les certificats.

Générez les certificats SSL.

sudo certbot certonly --webroot -w /usr/share/nginx/html -d ci.example.com

Les certificats générés sont susceptibles d'être stockés dans le /etc/letsencrypt/live/ci.example.com/répertoire. Le certificat SSL sera stocké sous fullchain.pemet la clé privée sera stockée sous privkey.pem.

Les certificats Let's Encrypt expirent dans 90 jours, il est donc recommandé de configurer le renouvellement automatique des certificats à l'aide des tâches Cron.

Ouvrez le fichier de tâche cron pour l' rootutilisateur.

sudo crontab -e

Ajoutez la ligne suivante à la fin du fichier.

30 5 * * * /usr/bin/certbot renew --quiet

La tâche cron ci-dessus s'exécutera tous les jours à 5h30. Si le certificat doit expirer, il les renouvellera automatiquement.

Maintenant, changez le fichier de configuration par défaut de Nginx pour supprimer la default_serverligne.

sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf

Créez un nouveau fichier de configuration pour l'interface Web de Buildbot.

sudo nano /etc/nginx/conf.d/buildbot.conf

Remplissez le fichier.

upstream buildbot {
server 127.0.0.1:8010;
}

server {
    listen 80 default_server;
    server_name ci.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2 default_server;
    server_name ci.example.com;

    root html;
    index index.html index.htm;

    ssl on;
    ssl_certificate         /etc/letsencrypt/live/ci.example.com/fullchain.pem;
    ssl_certificate_key     /etc/letsencrypt/live/ci.example.com/privkey.pem;

    ssl_session_cache      shared:SSL:10m;
    ssl_session_timeout  1440m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    add_header Strict-Transport-Security "max-age=31536000; includeSubdomains;";

    access_log  /var/log/nginx/buildbot.access.log;

    proxy_set_header HOST $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto  $scheme;
    proxy_set_header X-Forwarded-Server  $host;
    proxy_set_header X-Forwarded-Host  $host;

    location / {
        proxy_pass http://buildbot;
    }
    location /sse/ {
        proxy_buffering off;
        proxy_pass http://buildbot/sse/;
    }
    location /ws {
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_pass http://buildbot/ws;
        proxy_read_timeout 6000s;
    }
}

Recherchez les erreurs dans le nouveau fichier de configuration.

sudo nginx -t

Si vous voyez la sortie suivante, la configuration est sans erreur.

[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Si vous avez reçu une sorte d'erreur, assurez-vous de vérifier le chemin d'accès aux certificats SSL. Redémarrez le serveur Web Nginx pour implémenter le changement de configuration.

sudo systemctl restart nginx

Ouvrez le fichier de configuration Buildmaster.

sudo su buildbot -c "nano /home/buildbot/master/master.cfg"

Recherchez la ligne suivante.

c['buildbotURL'] = "http://192.168.1.1:8010/"

Modifiez l'URL en fonction du nom de domaine que vous utilisez.

c['buildbotURL'] = "https://ci.example.com/"

Redémarrez le service maître Buildbot.

sudo systemctl restart buildbot

Vous pouvez maintenant accéder au tableau de bord Buildbot à l'adresse https://ci.example.com. Vous verrez que les connexions à Buildbot sont désormais sécurisées avec SSL.

Comment installer et configurer Buildbot sur CentOS 7

Connectez-vous à l'aide des informations d'identification de l'administrateur et ajoutez votre premier pipeline pour commencer à créer votre application.



Leave a Comment

Comment installer MODX Revolution sur un VPS CentOS 7 LAMP

Comment installer MODX Revolution sur un VPS CentOS 7 LAMP

Vous utilisez un système différent? MODX Revolution est un système de gestion de contenu (CMS) de niveau entreprise rapide, flexible, évolutif, gratuit et open source écrit i

Configurez votre propre réseau privé avec OpenVPN

Configurez votre propre réseau privé avec OpenVPN

Vultr vous offre une connectivité réseau privée impressionnante pour les serveurs fonctionnant au même endroit. Mais parfois, vous voulez deux serveurs dans des pays différents

Comment installer et configurer CyberPanel sur votre serveur CentOS 7

Comment installer et configurer CyberPanel sur votre serveur CentOS 7

Vous utilisez un système différent? Introduction CyberPanel est lun des premiers panneaux de contrôle du marché à la fois open source et utilisant OpenLiteSpeed. Quest-ce que

Installer eSpeak sur CentOS 7

Installer eSpeak sur CentOS 7

Vous utilisez un système différent? ESpeak peut générer des fichiers audio de synthèse vocale (TTS). Ceux-ci peuvent être utiles pour de nombreuses raisons, telles que la création de votre propre Turin

Comment installer Thelia 2.3 sur CentOS 7

Comment installer Thelia 2.3 sur CentOS 7

Vous utilisez un système différent? Thelia est un outil open source pour la création de sites Web de commerce électronique et la gestion de contenu en ligne, écrit en PHP. Code source Thelia i

Comment déployer Google BBR sur CentOS 7

Comment déployer Google BBR sur CentOS 7

BBR (Bottleneck Bandwidth and RTT) est un nouvel algorithme de contrôle de congestion qui est contribué à la pile TCP du noyau Linux par Google. Avec BBR en place,

Comment installer YOURLS sur CentOS 7

Comment installer YOURLS sur CentOS 7

YOURLS (Your Own URL Shortener) est une application open source de raccourcissement dURL et danalyse de données. Dans cet article, nous couvrirons le processus dinstallation

Configurer Nginx-RTMP sur CentOS 7

Configurer Nginx-RTMP sur CentOS 7

Vous utilisez un système différent? RTMP est idéal pour diffuser du contenu en direct. Lorsque RTMP est associé à FFmpeg, les flux peuvent être convertis en différentes qualités. Vultr i

Comment installer LimeSurvey sur CentOS 7

Comment installer LimeSurvey sur CentOS 7

LimeSurvey est un outil de sondage en ligne gratuit et open source qui est largement utilisé pour publier des sondages en ligne et recueillir des commentaires sur les sondages. Dans cet article, je vais

Installer Java SE sur CentOS

Installer Java SE sur CentOS

Introduction Java est une plate-forme logicielle populaire qui vous permet de développer et dexécuter des applications et des applets Java dans divers environnements matériels. Il y a

Comment installer Vanilla Forum sur CentOS 7

Comment installer Vanilla Forum sur CentOS 7

Vous utilisez un système différent? Le forum Vanilla est une application de forum open source écrite en PHP. Il est entièrement personnalisable, facile à utiliser et prend en charge externa

Installation de Netdata sur CentOS 7

Installation de Netdata sur CentOS 7

Vous utilisez un système différent? Netdata est une étoile montante dans le domaine de la surveillance des métriques système en temps réel. Par rapport à dautres outils du même type, Netdata:

Comment installer le serveur Just Cause 2 (JC2-MP) sur CentOS 7

Comment installer le serveur Just Cause 2 (JC2-MP) sur CentOS 7

Dans ce didacticiel, découvrez comment configurer un serveur multijoueur Just Cause 2. Prérequis Veuillez vous assurer que le système est entièrement mis à jour avant de commencer

Comment installer Starbound Server sur CentOS 7

Comment installer Starbound Server sur CentOS 7

Vous utilisez un système différent? Dans ce tutoriel, je vais vous expliquer comment configurer un serveur Starbound sur CentOS 7. Prérequis Vous devez posséder ce jeu sur vous

Installation et configuration de ZNC sur CentOS 7

Installation et configuration de ZNC sur CentOS 7

ZNC est un videur IRC gratuit et open-source qui reste connecté en permanence à un réseau afin que les clients puissent recevoir des messages envoyés lorsquils sont hors ligne. Thi

Comment installer Django sur CentOS 7

Comment installer Django sur CentOS 7

Django est un framework Python populaire pour lécriture dapplications Web. Avec Django, vous pouvez créer des applications plus rapidement, sans réinventer la roue. Si tu veux

Comment configurer ionCube Loader sur CentOS 7

Comment configurer ionCube Loader sur CentOS 7

ionCube Loader est une extension PHP qui permet à un serveur Web dexécuter des fichiers PHP qui ont été encodés à laide dionCube Encoder et qui est requis pour exécuter e

Comment installer Reader Self 3.5 RSS Reader sur un VPS CentOS 7 LAMP

Comment installer Reader Self 3.5 RSS Reader sur un VPS CentOS 7 LAMP

Vous utilisez un système différent? Reader Self 3.5 est un lecteur RSS auto-hébergé simple et flexible, gratuit et open source et une alternative à Google Reader. Reader Sel

Comment installer PufferPanel (Panneau de configuration Minecraft gratuit) sur CentOS 7

Comment installer PufferPanel (Panneau de configuration Minecraft gratuit) sur CentOS 7

Introduction Dans ce tutoriel, installez bien PufferPanel sur notre Vultr VPS. PufferPanel est un panneau de contrôle open source et gratuit pour vous gérer

Comment installer BoltWire CMS sur CentOS 7

Comment installer BoltWire CMS sur CentOS 7

Vous utilisez un système différent? Introduction BoltWire est un système de gestion de contenu gratuit et léger écrit en PHP. Comparé à la plupart des autres gestionnaires de contenu

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau

ReactOS : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques d'analyse des mégadonnées : partie 1

Limpact de lintelligence artificielle dans les soins de santé 2021

Limpact de lintelligence artificielle dans les soins de santé 2021

L'IA dans le domaine de la santé a fait de grands progrès au cours des dernières décennies. Ainsi, l'avenir de l'IA dans les soins de santé continue de croître de jour en jour.