Jak zainstalować i skonfigurować Buildbot na CentOS 7

Buildbot to otwarte narzędzie do ciągłej integracji oparte na języku Python, służące do automatyzacji budowy, testowania i wdrażania oprogramowania. Buildbot składa się z jednego lub więcej wzorca Buildbot i kilku pracowników. Buildbot master lub Buildmaster ma centralne sterowanie systemem. Odpowiada za zarządzanie środowiskiem kompilacji, pracownikami i podejmuje wszystkie decyzje dotyczące wysyłania zadań do pracowników. Buildmaster wykrywa zmiany w repozytorium kodu i wysyła polecenia lub zadania do pracowników w celu wykonania. Pracownicy wykonują zadania i zwracają wynik Buildmaster. Buildmaster następnie powiadamia programistów wieloma obsługiwanymi kanałami. W tym samouczku zainstalujemy Master Builder i Workbota na CentOS 7. Skonfigurujemy również uwierzytelnianie i Nginx jako bezpieczne odwrotne proxy.

Wymagania wstępne

  • Instancja serwera Vultr CentOS 7 z co najmniej 1 GB pamięci RAM.
  • Użytkownik sudo .
  • Zarejestrowana nazwa domeny wskazuje na serwer.

W tym samouczku użyjemy 192.168.1.1jako publicznego adresu IP i ci.example.comnazwy domeny wskazanej na instancję Vultr. Pamiętaj, aby zastąpić wszystkie wystąpienia przykładowej nazwy domeny i adresu IP faktycznym.

Zaktualizuj system podstawowy za pomocą przewodnika Jak zaktualizować CentOS 7 . Po zaktualizowaniu systemu przejdź do instalacji PostgreSQL.

Zainstaluj zależności Python

Zainstaluj Pip, który jest menedżerem pakietów dla Pythona.

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

Zainstaluj PostgreSQL

Buildbot obsługuje wiele typów serwerów baz danych, takich jak MySQL, PostgreSQL i SQLite. W tym samouczku wykorzystamy PostgreSQL do obsługi serwera bazy danych Buildbot.

PostgreSQL to obiektowo-relacyjny system bazy danych, znany ze swojej stabilności i szybkości. Domyślne yumrepozytorium zawiera starą wersję PostgreSQL, więc dodaj repozytorium PostgreSQL.

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

Zainstaluj serwer bazy danych PostgreSQL.

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

Zainicjuj bazę danych.

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

Uruchom serwer PostgreSQL i włącz go automatycznie podczas uruchamiania.

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

Zmień hasło dla domyślnego użytkownika PostgreSQL.

sudo passwd postgres

Zaloguj się jako użytkownik PostgreSQL.

sudo su - postgres

Utwórz nowego użytkownika PostgreSQL dla Buildbot.

createuser bb_user

Możesz użyć dowolnej nazwy użytkownika zamiast bb_user, jeśli wolisz. PostgreSQL zapewnia psqlpowłokę do uruchamiania zapytań w bazie danych. Przejdź do powłoki PostgreSQL.

psql

Ustaw hasło dla nowo utworzonego użytkownika.

ALTER USER bb_user WITH ENCRYPTED password 'DBPassword';

Zastąp DBPasswordbezpiecznym hasłem.

Utwórz nową bazę danych dla instalacji Buildbot.

CREATE DATABASE buildbot OWNER bb_user;

Wyjdź ze psqlskorupy.

\q

Przejdź do sudoużytkownika.

exit

Edytuj pg_hba.confplik, aby włączyć uwierzytelnianie oparte na MD5.

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

Znajdź następujące wiersze i zmień wartości peeroraz ident, w METHODkolumnie, odpowiednio na trusti md5.

# 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

Po aktualizacji konfiguracja będzie wyglądać jak następujący tekst.

# 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

Zapisz plik i zamknij edytor. Zainstaluj adapter bazy danych PostgreSQL dla języka Python.

sudo pip install psycopg2

Uruchom ponownie PostgreSQL, aby zmiany mogły zostać wprowadzone.

sudo systemctl restart postgresql-10

Zainstaluj Buildbot

Zainstaluj Buildbot za pomocą Pip.

sudo pip install 'buildbot[bundle]' pyopenssl service_identity

Powyższe polecenie instalacji buildbota wraz z buildbot-www, buildbot-workeri kilka takich jak www wtyczek buildbot-waterfall-view.

Aby upewnić się, że Buildbot został pomyślnie zainstalowany, możesz to sprawdzić, sprawdzając wersję Buildbot.

buildbot --version

Dane wyjściowe powinny przypominać następujący tekst.

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

Zmodyfikuj reguły zapory, aby zezwolić na port 8010. Buildbot używa tego portu do nasłuchiwania żądań internetowych.

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

Skonfiguruj Buildbot Master

Utwórz nowego nieuprzywilejowanego użytkownika, aby uruchomić procesy główne i robocze Buildbot. Nie zaleca się uruchamiania usług głównych Buildbot jako rootużytkownik.

sudo adduser buildbot
sudo passwd buildbot

Zaloguj się jako nowo utworzony buildbotużytkownik.

sudo su - buildbot

Skonfiguruj master Buildbot w /home/buildbot/masterkatalogu. Ten katalog będzie zawierał pliki konfiguracji, statusu i dziennika każdej kompilacji.

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

Pamiętaj, aby zastąpić poświadczenia użytkownika bazy danych w powyższym poleceniu.

Uwaga: Jeśli chcesz używać bazy danych SQLite zamiast PostgreSQL, po prostu pomiń tę --db 'postgresql://bb_user:DBpassword@localhost/buildbot'opcję. Baza danych SQLite zostanie utworzona w tym samym katalogu.

Powyższe polecenie utworzy ~/masterkatalog do przechowywania plików Buildmaster. Zapisuje również dane w bazie danych PostgreSQL. Otrzymasz następujące dane wyjściowe.

[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

Skopiuj przykładowy plik konfiguracyjny do pliku konfiguracji na żywo.

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

Edytuj plik konfiguracyjny.

nano ~/master/master.cfg

Znajdź następujące linie.

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",
}

Powyższa konfiguracja zawiera wpis dla przykładowego pracownika. Zmodyfikujemy przykładowy wpis dla pracownika, na którym będziemy działać localhost. Zmień na example-workerdowolną odpowiednią nazwę dla localhostpracownika i zmień na passinne hasło. Zanotuj nazwę pracownika i hasło, ponieważ będziemy tego wymagać w dalszej części samouczka. Zmień nazwę pracownika na liście konstruktorów. Zmień nazwę aplikacji i URL projektu zgodnie ze swoimi potrzebami.

Zmień adres URL Buildbot z localhostna rzeczywistą nazwę domeny lub publiczny adres IP. Sprawdź również, czy informacje o bazie danych w pliku konfiguracyjnym są zgodne z faktycznymi poświadczeniami bazy danych.

Na końcu pliku dodaj c['buildbotNetUsageData'] = None. Ten parametr wyłączy wysyłanie informacji o wersji oprogramowania i szczegółach użycia wtyczki do programistów. Aby włączyć wysyłanie informacji o użytkowaniu, zmień opcję na Full.

Konfiguracja powinna wyglądać jak poniższy tekst.

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

Zapisz plik i zamknij edytor. Sprawdź plik konfiguracyjny pod kątem błędów.

buildbot checkconfig ~/master

Jeśli plik konfiguracyjny nie zawiera błędów, zobaczysz następujące dane wyjściowe.

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

Teraz, gdy wszystko jest poprawnie skonfigurowane, możesz uruchomić Buildbot master.

buildbot start ~/master

Zobaczysz następujące dane wyjściowe.

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

Teraz, gdy master Buildbota uruchomił się poprawnie, interfejs użytkownika jest dostępny pod adresem http://192.168.1.1:8010. Powinieneś zobaczyć następujący interfejs Buildbot.

Jak zainstalować i skonfigurować Buildbot na CentOS 7

Skonfiguruj Buildbot Worker

Ponieważ zmodyfikowaliśmy już konfigurację pracownika ~/master/master.cfg, możemy przystąpić do tworzenia nowego pracownika.

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

Upewnij się, że używasz dokładnie tej samej nazwy pracownika i hasła, jakie podano w ~/master/master.cfgpliku. Jeśli występuje niezgodność nazwy pracownika lub hasła, pracownik nie będzie mógł połączyć się z masterem Buildbot. Po pomyślnym wykonaniu zobaczysz następujące dane wyjściowe.

[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

Informacje o pracowniku są przechowywane w /infokatalogu. Edytuj informacje administracyjne o deweloperze.

nano ~/worker/info/admin

Zastąp przykładową nazwę faktycznym imieniem i adresem e-mail.

Your Name <[email protected]>

Teraz otwórz plik zawierający informacje o hoście.

nano ~/worker/info/host

Zamień przykładową instrukcję na rzeczywistą informację o systemie hosta.

Localhost, CentOS 7

Dane administratora i hosta pracownika służą wyłącznie do informowania użytkowników o systemie. Możesz także dodać dodatkowe informacje o systemie, takie jak wersja Buildbot i wersja Twisted.

Uruchom pracownika.

buildbot-worker start ~/worker

Dane wyjściowe będą wyglądały jak następujący tekst.

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

Aby sprawdzić, czy pracownik jest zarejestrowany, przejdź do interfejsu WWW Buildbota i przejdź do Builds >> Workerslewej nawigacji. Powinieneś zobaczyć, że pracownik jest gotowy i gotowy do budowy.

Jak zainstalować i skonfigurować Buildbot na CentOS 7

Aby uruchomić przykładową kompilację, aby sprawdzić, czy proces roboczy Buildbot działa poprawnie, przejdź do Builds >> Builders. Kliknij runtestsnazwę konstruktora, aby otworzyć interfejs konstruktora, a następnie kliknij Forceprzycisk, aby wymusić kompilację. Podaj swoje imię i kliknij Start Buildprzycisk, aby rozpocząć kompilację. Ponieważ jest to przykładowy test kompilacji w celu sprawdzenia środowiska Buildbot, zakończy się on za kilka sekund. Otrzymasz komunikat o powodzeniu i wynik kompilacji.

Jak zainstalować i skonfigurować Buildbot na CentOS 7

Konfigurowanie usługi systemowej

Chociaż wzorzec i proces roboczy Buildbot można łatwo uruchomić za pomocą powyższych poleceń, zaleca się używanie jednostek Systemd do uruchamiania i zarządzania usługami Buildbot. Zapewni to ich automatyczne uruchomienie przy ponownym uruchomieniu systemu i awariach.

Uwaga: Przełączenie na sudoużytkownikiem ponownie uruchamiając albo exitalbo su <username>. Odtąd wszystkie polecenia muszą być wykonywane przez sudoużytkownika.

Zatrzymaj działającą robotę roboczą i główną usługę Buildbot.

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

Utwórz nowy plik jednostki Systemd dla wzorca Buildbot.

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

Wypełnij plik.

[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

Uruchom główny Buildbot i włącz go automatycznie podczas uruchamiania.

sudo systemctl start buildbot
sudo systemctl enable buildbot

Utwórz nowy plik jednostki Systemd dla pracownika Buildbot.

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

Wypełnij plik.

[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

Uruchom proces roboczy Buildbot i włącz go, aby uruchamiał się automatycznie podczas uruchamiania.

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

Możesz sprawdzić status usług.

sudo systemctl status buildbot buildbot-worker

Jeśli usługi działają płynnie, zobaczysz to w danych wyjściowych.

[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.

Włączanie uwierzytelniania

Domyślnie uwierzytelnianie nie jest włączone w interfejsie internetowym Buildbot. W przypadku witryn internetowych zdecydowanie zaleca się skonfigurowanie uwierzytelniania, aby tylko autoryzowani użytkownicy mogli wykonywać zadania administracyjne. Aby skonfigurować uwierzytelnianie, otwórz ponownie główny plik konfiguracyjny Buildbot.

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

Dodaj następujące wiersze na końcu pliku.

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'})

Zamień oba wystąpienia admin_userna rzeczywistą nazwę użytkownika, której chcesz użyć, i AdminPasswordna silne hasło.

Sprawdź błędy w pliku konfiguracyjnym.

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

Uruchom ponownie główną usługę Buildbot, aby zmiany mogły zostać wprowadzone.

sudo systemctl restart buildbot

Przejrzyj ponownie interfejs sieciowy, aby zobaczyć, że anonimowi użytkownicy mogą wyświetlać tylko podstawowe informacje o serwerze kompilacji. Teraz zaloguj się przy użyciu poświadczeń ustawionych w master.cfgpliku, a zobaczysz, że wszystkie inne funkcje administracyjne są dostępne tylko dla zalogowanego użytkownika administratora.

Zabezpieczanie Buildbota za pomocą Let's Encrypt SSL

Domyślnie Buildbot nasłuchuje na porcie 8010w niezabezpieczonych połączeniach. HTTPSZaleca się zabezpieczenie interfejsu sieciowego za pomocą, aby zapewnić bezpieczeństwo danych podczas transportu z przeglądarki na serwer. W tej części samouczka zainstalujemy i zabezpieczymy Nginx za pomocą Let's Encrypt darmowych certyfikatów SSL. Serwer WWW Nginx będzie działał jako odwrotny serwer proxy do przekazywania przychodzących żądań do punktu końcowego HTTP Buildbota.

Zainstaluj Nginx.

sudo yum -y install nginx

Uruchom Nginx i włącz automatyczne uruchamianie podczas uruchamiania.

sudo systemctl start nginx
sudo systemctl enable nginx

Zainstaluj Certbot, czyli aplikację kliencką Let's Encrypt CA.

sudo yum -y install certbot

Aby móc zażądać certyfikatów, musisz zezwolić na porty 80i / 443lub standardy HTTPi HTTPSusługi za pośrednictwem zapory. Usuń także port 8010, który nasłuchuje niezabezpieczonych połączeń.

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

Uwaga: Aby uzyskać certyfikaty z Let's Encrypt CA, domena, dla której mają być generowane certyfikaty, musi być skierowana w stronę serwera. Jeśli nie, dokonaj niezbędnych zmian w rekordach DNS domeny i poczekaj na propagację DNS przed ponownym żądaniem certyfikatu. Certbot sprawdza urząd domeny przed podaniem certyfikatów.

Wygeneruj certyfikaty SSL.

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

Wygenerowane certyfikaty prawdopodobnie będą przechowywane w /etc/letsencrypt/live/ci.example.com/katalogu. Certyfikat SSL będzie przechowywany jako, fullchain.pema klucz prywatny będzie przechowywany jako privkey.pem.

Ważność certyfikatów Let's Encrypt wygasa za 90 dni, dlatego zaleca się skonfigurowanie automatycznego odnawiania certyfikatów za pomocą zadań Cron.

Otwórz plik zadania cron dla rootużytkownika.

sudo crontab -e

Dodaj następujący wiersz na końcu pliku.

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

Powyższe zadanie crona będzie uruchamiane codziennie o 5:30. Jeśli termin ważności certyfikatu upływa, zostanie on automatycznie odnowiony.

Teraz zmień domyślny plik konfiguracyjny Nginx, aby usunąć default_serverlinię.

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

Utwórz nowy plik konfiguracyjny dla interfejsu WWW Buildbot.

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

Wypełnij plik.

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;
    }
}

Sprawdź błędy w nowym pliku konfiguracyjnym.

sudo nginx -t

Jeśli wyświetli się następujący wynik, konfiguracja jest wolna od błędów.

[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

Jeśli wystąpił jakiś błąd, sprawdź dokładnie ścieżkę do certyfikatów SSL. Uruchom ponownie serwer WWW Nginx, aby wprowadzić zmianę w konfiguracji.

sudo systemctl restart nginx

Otwórz plik konfiguracyjny Buildmaster.

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

Znajdź następujący wiersz.

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

Zmień adres URL zgodnie z nazwą domeny, której używasz.

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

Uruchom ponownie główną usługę Buildbot.

sudo systemctl restart buildbot

Teraz możesz uzyskać dostęp do pulpitu nawigacyjnego Buildbot pod adresem https://ci.example.com. Zobaczysz, że połączenia z Buildbot są teraz zabezpieczone przez SSL.

Jak zainstalować i skonfigurować Buildbot na CentOS 7

Zaloguj się przy użyciu poświadczeń administratora i dodaj swój pierwszy potok, aby rozpocząć tworzenie aplikacji.



Leave a Comment

Jak zainstalować Anchor CMS na CentOS 7 LAMP VPS

Jak zainstalować Anchor CMS na CentOS 7 LAMP VPS

Używasz innego systemu? Anchor CMS to bardzo prosty i niezwykle lekki, darmowy i otwarty system zarządzania treścią (CMS) Blog Engine, który

Jak zaktualizować CentOS 7, Ubuntu 16.04 i Debian 8

Jak zaktualizować CentOS 7, Ubuntu 16.04 i Debian 8

Podczas konfigurowania nowego serwera Linux zaleca się aktualizację jądra systemu i innych pakietów do najnowszej stabilnej wersji. W tym artykule

Skonfiguruj klaster RethinkDB w CentOS 7

Skonfiguruj klaster RethinkDB w CentOS 7

Wprowadzenie RethinkDB to baza danych NoSQL, która przechowuje dane jako dokumenty JSON. Ma bardzo intuicyjny język zapytań i funkcje powszechnie dostępne

Skonfiguruj Magento na CentOS 6

Skonfiguruj Magento na CentOS 6

Niezależnie od tego, czy chcesz umieścić zapasy sklepów online, czy po prostu prosty sklep z akcesoriami technicznymi, Magento jest doskonałym rozwiązaniem dla eCommerce online. Ten artykuł

Jak zainstalować i skonfigurować OrientDB Community Edition na CentOS 7

Jak zainstalować i skonfigurować OrientDB Community Edition na CentOS 7

OrientDB to wielomodowy model open source NoSQL DBMS nowej generacji. Dzięki obsłudze wielu modeli danych, OrientDB może zapewnić większą funkcjonalność i elastyczność

Jak zainstalować Neos CMS na CentOS 7

Jak zainstalować Neos CMS na CentOS 7

Neos to innowacyjny system zarządzania treścią typu open source, który doskonale nadaje się do tworzenia i edytowania treści online. Z myślą o autorach i redaktorach, Neo

Jak zainstalować Vtiger CRM Open Source Edition na CentOS 7

Jak zainstalować Vtiger CRM Open Source Edition na CentOS 7

Vtiger CRM to popularna aplikacja do zarządzania relacjami z klientami, która może pomóc przedsiębiorstwom zwiększyć sprzedaż, zapewnić obsługę klienta i zwiększyć zyski. ja

Jak zainstalować MaraDNS na CentOS 6

Jak zainstalować MaraDNS na CentOS 6

MaraDNS to lekki, ale solidny program serwera DNS typu open source. W porównaniu z innymi aplikacjami tego samego rodzaju, takimi jak ISC BIND, PowerDNS i djbdns

Instalowanie Netdata na CentOS 7

Instalowanie Netdata na CentOS 7

Używasz innego systemu? Netdata jest wschodzącą gwiazdą w dziedzinie monitorowania wskaźników systemowych w czasie rzeczywistym. W porównaniu z innymi narzędziami tego samego rodzaju, Netdata:

Jak zainstalować Starbound Server na CentOS 7

Jak zainstalować Starbound Server na CentOS 7

Używasz innego systemu? W tym samouczku wyjaśnię, jak skonfigurować serwer Starbound na CentOS 7. Wymagania wstępne Musisz mieć tę grę na sobie

Clustering RabbitMQ na CentOS 7

Clustering RabbitMQ na CentOS 7

RabbitMQ to broker komunikatów typu open source, który obsługuje AMQP, STOMP i inne technologie komunikacyjne. Jest szeroko stosowany w aplikacjach dla przedsiębiorstw

Skonfiguruj SA-MP San Andreas Multiplayer Server na CentOS 6

Skonfiguruj SA-MP San Andreas Multiplayer Server na CentOS 6

Witamy w innym samouczku Vultr. Tutaj dowiesz się, jak zainstalować i uruchomić serwer SAMP. Ten przewodnik został napisany dla CentOS 6. Wymagania wstępne Będziesz potrzebował

Zainstaluj Elgg na CentOS 7

Zainstaluj Elgg na CentOS 7

Używasz innego systemu? Elgg to silnik sieci społecznościowych typu open source, który umożliwia tworzenie środowisk społecznościowych, takich jak kampusowe sieci społecznościowe

Jak zainstalować serwer RStudio na CentOS 7

Jak zainstalować serwer RStudio na CentOS 7

RStudio Server to internetowa wersja RStudio, która jest serią narzędzi zaprojektowanych w celu ułatwienia kodowania przy użyciu języka programowania R. W thi

Instalowanie Bolt CMS na CentOS 7

Instalowanie Bolt CMS na CentOS 7

Bolt to open source CMS napisany w PHP. Kod źródłowy Bolts jest hostowany na GitHub. Ten przewodnik pokaże Ci, jak zainstalować Bolt CMS na nowym CentOS 7 Vult

Jak zainstalować Elasticsearch na instancji serwera Vultr CentOS 7

Jak zainstalować Elasticsearch na instancji serwera Vultr CentOS 7

Elasticsearch to popularny wyszukiwarka pełnotekstowa i silnik analityczny typu open source. Dzięki swojej wszechstronności, skalowalności i łatwości użytkowania, Elasticsearch jest szeroko rozpowszechniony

Wdróż Kubernetes za pomocą Kubeadm na CentOS 7

Wdróż Kubernetes za pomocą Kubeadm na CentOS 7

Omówienie Ten artykuł ma na celu pomóc ci w szybkim uruchomieniu klastra Kubernetes z kubeadm. W tym przewodniku zostaną wdrożone dwa serwery

Sails.js należy skonfigurować do programowania w CentOS 7

Sails.js należy skonfigurować do programowania w CentOS 7

Używasz innego systemu? Wprowadzenie Sails.js to framework MVC dla Node.js, podobny do Ruby on Rails. Umożliwia tworzenie nowoczesnych aplikacji wer

Jak zainstalować PufferPanel (bezpłatny panel sterowania Minecraft) na CentOS 7

Jak zainstalować PufferPanel (bezpłatny panel sterowania Minecraft) na CentOS 7

Wprowadzenie W tym samouczku zainstaluj PufferPanel na naszym Vultr VPS. PufferPanel to otwarty, darmowy panel kontrolny do zarządzania tobą

Lepsze narzędzia monitorowania dla Ubuntu i CentOS

Lepsze narzędzia monitorowania dla Ubuntu i CentOS

Wprowadzenie Systemy Linux są domyślnie dostarczane z narzędziami do monitorowania, takimi jak top, df i du, które pomagają monitorować procesy i miejsce na dysku. Często jednak są

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.