Kako instalirati i konfigurirati Buildbot na CentOS 7

Buildbot je alat za kontinuiranu integraciju otvorenog koda, temeljen na Pythonu, za automatizaciju izrade, testiranja i implementacije softvera. Buildbot se sastoji od jednog ili više Buildbot majstora i određenog broja radnika. Buildbot master ili Buildmaster ima središnju komandu nad sustavom. Odgovorno je za upravljanje okolinom za izgradnju, radnicima i donosi sve odluke o slanju poslova radnicima. Buildmaster otkriva promjene u repozitoriju koda i šalje naredbe ili poslove radnicima da ih izvrše. Radnici izvršavaju poslove i vraćaju rezultat Buildmasteru. Buildmaster zatim obavještava programere putem više podržanih kanala. U ovom vodiču instalirat ćemo Buildbot master i worker na CentOS 7. Također ćemo konfigurirati autentifikaciju i Nginx kao zaštićeni obrnuti proxy.

Preduvjeti

  • Instanca poslužitelja Vultr CentOS 7 s najmanje 1 GB RAM-a.
  • Korisnik sudoa .
  • Registrirani naziv domene usmjeren je prema poslužitelju.

Za ovaj vodič koristit ćemo 192.168.1.1kao javnu IP adresu i ci.example.comkao ime domene usmjereno na Vultr instancu. Svakako zamijenite sva pojavljivanja primjera naziva domene i IP adrese stvarnim.

Ažurirajte svoj osnovni sustav pomoću vodiča Kako ažurirati CentOS 7 . Nakon što je vaš sustav ažuriran, nastavite s instalacijom PostgreSQL-a.

Instalirajte ovisnosti o Pythonu

Instalirajte Pip, koji je upravitelj paketa za Python.

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

Instalirajte PostgreSQL

Buildbot podržava više vrsta poslužitelja baza podataka kao što su MySQL, PostgreSQL i SQLite. U ovom vodiču koristit ćemo PostgreSQL za hostiranje poslužitelja baze podataka Buildbot.

PostgreSQL je objektno-relacijski sustav baze podataka, poznat po svojoj stabilnosti i brzini. Zadano yumspremište sadrži staru verziju PostgreSQL-a, stoga dodajte PostgreSQL spremište.

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

Instalirajte PostgreSQL poslužitelj baze podataka.

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

Inicijalizirajte bazu podataka.

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

Pokrenite PostgreSQL poslužitelj i omogućite mu automatsko pokretanje prilikom pokretanja.

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

Promijenite lozinku za zadanog korisnika PostgreSQL.

sudo passwd postgres

Prijavite se kao korisnik PostgreSQL-a.

sudo su - postgres

Stvorite novog PostgreSQL korisnika za Buildbot.

createuser bb_user

Možete koristiti bilo koje korisničko ime umjesto bb_user, ako želite. PostgreSQL pruža psqlljusku za pokretanje upita u bazi podataka. Prijeđite na ljusku PostgreSQL.

psql

Postavite lozinku za novostvorenog korisnika.

ALTER USER bb_user WITH ENCRYPTED password 'DBPassword';

Zamijenite DBPasswordsigurnom lozinkom.

Napravite novu bazu podataka za instalaciju Buildbota.

CREATE DATABASE buildbot OWNER bb_user;

Izađite iz psqlljuske.

\q

Prebacite se na sudokorisnika.

exit

Uredite pg_hba.confdatoteku kako biste omogućili MD5 provjeru autentičnosti.

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

Pronađite sljedeće retke i promijenite vrijednosti peeri ident, u METHODstupcu, u trusti md5, respektivno.

# 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

Nakon ažuriranja, konfiguracija će izgledati kao sljedeći 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

Spremite datoteku i izađite iz uređivača. Instalirajte PostgreSQL adapter baze podataka za Python.

sudo pip install psycopg2

Ponovno pokrenite PostgreSQL kako bi promjene mogle stupiti na snagu.

sudo systemctl restart postgresql-10

Instalirajte Buildbot

Instalirajte Buildbot koristeći Pip.

sudo pip install 'buildbot[bundle]' pyopenssl service_identity

Gornja naredba će instalirati Buildbot zajedno s buildbot-www, buildbot-worker, i nekoliko web dodataka kao što su buildbot-waterfall-view.

Kako biste bili sigurni da je Buildbot uspješno instaliran, možete provjeriti verziju Buildbota.

buildbot --version

Rezultat bi trebao nalikovati sljedećem tekstu.

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

Izmijenite pravila vatrozida kako biste dopustili port 8010. Buildbot koristi ovaj port za slušanje web zahtjeva.

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

Konfigurirajte Buildbot Master

Stvorite novog neprivilegiranog korisnika za pokretanje glavnih i radnih procesa Buildbota. Ne preporučuje se pokretanje Buildbot master usluga kao rootkorisnik.

sudo adduser buildbot
sudo passwd buildbot

Prijavite se kao novostvoreni buildbotkorisnik.

sudo su - buildbot

Postavite Buildbot master u /home/buildbot/masterdirektoriju. Ovaj direktorij će sadržavati konfiguracijske, statusne i log datoteke svake gradnje.

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

Obavezno zamijenite vjerodajnice korisnika baze podataka u gornjoj naredbi.

Napomena: Ako želite koristiti SQLite bazu podataka umjesto PostgreSQL, jednostavno izostavite --db 'postgresql://bb_user:DBpassword@localhost/buildbot'opciju. SQLite baza podataka bit će kreirana u istom direktoriju.

Gornja naredba će stvoriti ~/masterdirektorij za pohranu Buildmaster datoteka. Također će zapisati podatke u PostgreSQL bazu podataka. Dobit ćete sljedeći izlaz.

[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

Kopirajte uzorak konfiguracijske datoteke u živu konfiguracijsku datoteku.

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

Uredite konfiguracijsku datoteku.

nano ~/master/master.cfg

Pronađite sljedeće retke.

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

Gornja konfiguracija ima unos za primjer radnika. Izmijenit ćemo unos uzorka za radnika na kojem ćemo raditi localhost. Promijenite u example-workerbilo koje prikladno ime za localhostradnika i promijenite u passneku drugu lozinku. Zabilježite ime i lozinku radnika jer ćemo to zahtijevati kasnije u vodiču. Promijenite ime radnika na popisu graditelja. Promijenite naziv aplikacije i URL projekta prema svojim potrebama.

Change the Buildbot URL from localhost to your actual domain name or public IP address. Also, verify that the database information in the configuration file matches your actual database credentials.

At the end of the file, add c['buildbotNetUsageData'] = None. This parameter will disable sending the software version information and plugin usage details to the developers. However, to enable sending the uses information, change the option to Full.

The configuration should look like the following text.

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

Save the file and exit the editor. Check the configuration file for errors.

buildbot checkconfig ~/master

If the configuration file has no errors, you will see following output.

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

Now that everything is configured correctly, you can start the Buildbot master.

buildbot start ~/master

You will see the following output.

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

Now that the Buildbot master has started correctly, the web user interface is accessible at http://192.168.1.1:8010. You should see the following Buildbot interface.

Kako instalirati i konfigurirati Buildbot na CentOS 7

Configure Buildbot Worker

Since we have already modified the worker configuration in ~/master/master.cfg, we can proceed to create a new worker.

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

Make sure that you use the exact same worker name and password as mentioned in ~/master/master.cfg file. If there's a mismatch in worker name or password, the worker will not be able to connect to the Buildbot master. You will see the following output upon successful execution.

[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

Information about the worker is stored in the /info directory. Edit the administrative information about the developer.

nano ~/worker/info/admin

Replace the example name with your actual name and email.

Your Name <[email protected]>

Now, open the file containing information about the host.

nano ~/worker/info/host

Replace the example instruction with the actual information about the host system.

Localhost, CentOS 7

The worker admin and host information is only used to tell the users about the system. You can also add additional information about the system such as Buildbot version and Twisted version.

Start the worker.

buildbot-worker start ~/worker

The output will look like the following text.

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

To check if the worker is registered, head to the web interface of Buildbot and navigate to Builds >> Workers from the left navigation. You should see that the worker is up and ready to build.

Kako instalirati i konfigurirati Buildbot na CentOS 7

To run a sample build, to check if the Buildbot worker is running successfully, navigate to Builds >> Builders. Click on the runtests builder name to open the builder interface and click on the Force button to force a build. Provide your name and click on the Start Build button to start the build. Since it is a sample build test to check the Buildbot environment, it will finish in a couple of seconds. You will get a success message and the build result.

Kako instalirati i konfigurirati Buildbot na CentOS 7

Setting up Systemd Service

Although the Buildbot master and worker can be easily started using the commands above, it is recommended to use Systemd units to run and manage the Buildbot services. This will ensure that they are automatically started on system restart and failures.

Note: Switch to the sudo user again by running either exit or su <username>. From now on all the commands need to be executed by the sudo user.

Stop the running Buildbot worker and master service.

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

Create a new Systemd unit file for the Buildbot master.

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

Populate the file.

[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

Start the Buildbot master and enable it to automatically start at boot time.

sudo systemctl start buildbot
sudo systemctl enable buildbot

Create a new Systemd unit file for the Buildbot worker.

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

Populate the file.

[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

Start the Buildbot worker and enable it to automatically start at boot time.

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

You can check the status of the services.

sudo systemctl status buildbot buildbot-worker

If the services are running smoothly, you will see that in the output.

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

Enabling Authentication

By default, authentication is not enabled in the Buildbot web interface. For internet facing sites, it is strongly recommended to setup authentication so that only the authorized users can have the ability to perform administrative tasks. To set up authentication, reopen the Buildbot master configuration file.

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

Add the following lines to the end of the file.

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

Replace both occurrences of admin_user with the actual username you want to use and AdminPassword with a strong password.

Check for errors in the configuration file.

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

Restart Buildbot master service so that the changes can take effect.

sudo systemctl restart buildbot

Browse the web interface again to see that the anonymous users can only view the basic details about the build server. Now, log in using the credentials set in the master.cfg file and you will see that all other administrative functions are only available to the logged in admin user.

Securing Buildbot with Let's Encrypt SSL

By default, Buildbot listens to the port 8010 on unsecured connections. Securing the web interface with HTTPS is recommended to ensure that the data is safe during transportation from the browser to the server. In this section of the tutorial, we will install and secure Nginx with Let's Encrypt free SSL certificates. The Nginx web server will work as a reverse proxy to forward the incoming requests to Buildbot's HTTP endpoint.

Install Nginx.

sudo yum -y install nginx

Start Nginx and enable it to automatically start at boot time.

sudo systemctl start nginx
sudo systemctl enable nginx

Install Certbot, which is the client application for Let's Encrypt CA.

sudo yum -y install certbot

Before you can request the certificates, you will need to allow ports 80 and 443 or standard HTTP and HTTPS services through the firewall. Also, remove port 8010, which listens to the unsecured connections.

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

Note: To obtain certificates from Let's Encrypt CA, the domain for which the certificates are to be generated must be pointed towards the server. If not, make the necessary changes to the DNS records of the domain and wait for the DNS to propagate before making the certificate request again. Certbot checks the domain authority before providing the certificates.

Generate the SSL certificates.

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

Generirani certifikati će vjerojatno biti pohranjeni u /etc/letsencrypt/live/ci.example.com/imeniku. SSL certifikat će biti pohranjen kao, fullchain.pema privatni ključ će biti pohranjen kao privkey.pem.

Let's Encrypt certifikati istječu za 90 dana, stoga je preporučljivo postaviti automatsku obnovu certifikata pomoću Cron poslova.

Otvorite datoteku cron posla za rootkorisnika.

sudo crontab -e

Dodajte sljedeći redak na kraj datoteke.

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

Gornji cron posao će se izvoditi svaki dan u 5:30 ujutro. Ako potvrda istekne, automatski će se obnoviti.

Sada promijenite zadanu konfiguracijsku datoteku Nginxa da uklonite default_serverliniju.

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

Izradite novu konfiguracijsku datoteku za Buildbot web sučelje.

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

Popunite datoteku.

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

Provjerite ima li pogrešaka u novoj konfiguracijskoj datoteci.

sudo nginx -t

Ako vidite sljedeći izlaz, konfiguracija je bez grešaka.

[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

Ako ste primili neku vrstu pogreške, provjerite još jednom put do SSL certifikata. Ponovno pokrenite Nginx web poslužitelj kako biste implementirali promjenu konfiguracije.

sudo systemctl restart nginx

Otvorite konfiguracijsku datoteku Buildmaster.

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

Pronađite sljedeći redak.

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

Promijenite URL prema imenu domene koju koristite.

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

Ponovno pokrenite glavnu uslugu Buildbot.

sudo systemctl restart buildbot

Sada možete pristupiti Buildbot nadzornoj ploči na https://ci.example.com. Vidjet ćete da su veze s Buildbotom sada zaštićene SSL-om.

Kako instalirati i konfigurirati Buildbot na CentOS 7

Prijavite se koristeći administratorske vjerodajnice i dodajte svoj prvi cjevovod za početak izrade aplikacije.


Instalirajte Plesk na CentOS 7

Instalirajte Plesk na CentOS 7

Korištenje drugog sustava? Plesk je vlasnička upravljačka ploča web hosta koja omogućuje korisnicima da administriraju svoje osobne i/ili klijentske web stranice, baze podataka

Kako instalirati Squid proxy na CentOS

Kako instalirati Squid proxy na CentOS

Squid je popularan besplatni program za Linux koji vam omogućuje stvaranje web proxyja za prosljeđivanje. U ovom vodiču vidjet ćete kako instalirati Squid na CentOS da vas preokrene

Kako instalirati Lighttpd (LLMP Stack) na CentOS 6

Kako instalirati Lighttpd (LLMP Stack) na CentOS 6

Uvod Lighttpd je fork Apachea koji ima za cilj da bude puno manje intenzivan prema resursima. Lagan je, otuda mu i naziv, i prilično je jednostavan za korištenje. Instaliraj

Konfiguriranje statičkog umrežavanja i IPv6 na CentOS 7

Konfiguriranje statičkog umrežavanja i IPv6 na CentOS 7

VULTR je nedavno napravio promjene na svojoj strani i sada bi sve trebalo raditi dobro iz kutije s omogućenim NetworkManagerom. Želite li onemogućiti

Promjena Icinga2 za korištenje modela Master/Client na CentOS 6 ili CentOS 7

Promjena Icinga2 za korištenje modela Master/Client na CentOS 6 ili CentOS 7

Icinga2 je moćan sustav nadzora, a kada se koristi u modelu master-client, može zamijeniti potrebu za provjerama praćenja na temelju NRPE. Glavni klijent

Kako instalirati Apache Cassandra 3.11.x na CentOS 7

Kako instalirati Apache Cassandra 3.11.x na CentOS 7

Korištenje drugog sustava? Apache Cassandra je besplatni i otvorenog koda NoSQL sustav upravljanja bazom podataka koji je osmišljen kako bi osigurao skalabilnost, visoku

Kako instalirati Microweber na CentOS 7

Kako instalirati Microweber na CentOS 7

Korištenje drugog sustava? Microweber je CMS i internetska trgovina otvorenog koda povuci i ispusti. Izvorni kod Microwebera nalazi se na GitHubu. Ovaj vodič će vam pokazati

Kako instalirati Mattermost 4.1 na CentOS 7

Kako instalirati Mattermost 4.1 na CentOS 7

Korištenje drugog sustava? Mattermost je open source alternativa Slack SAAS servisu za razmjenu poruka. Drugim riječima, s Mattermostom možete ca

Stvaranje mreže Minecraft poslužitelja s BungeeCord na Debian 8, Debian 9 ili CentOS 7

Stvaranje mreže Minecraft poslužitelja s BungeeCord na Debian 8, Debian 9 ili CentOS 7

Što vam treba Vultr VPS s najmanje 1 GB RAM-a. SSH pristup (s root/administrativnim privilegijama). Korak 1: Instalacija BungeeCord-a Najprije

Omogućava šifriranje na Plesku

Omogućava šifriranje na Plesku

Upravljačka ploča Plesk ima vrlo lijepu integraciju za Lets Encrypt. Lets Encrypt je jedan od jedinih SSL pružatelja usluga koji u potpunosti izdaju certifikate

Omogućuje šifriranje na cPanelu

Omogućuje šifriranje na cPanelu

Lets Encrypt je tijelo za izdavanje certifikata posvećeno besplatnom pružanju SSL certifikata. cPanel je izgradio urednu integraciju tako da vi i vaš klijent

Kako instalirati Concrete5 na CentOS 7

Kako instalirati Concrete5 na CentOS 7

Korištenje drugog sustava? Concrete5 je CMS otvorenog koda koji nudi mnoge osebujne i korisne značajke koje pomažu urednicima u jednostavnoj proizvodnji sadržaja i

Kako instalirati ploču za pregled na CentOS 7

Kako instalirati ploču za pregled na CentOS 7

Korištenje drugog sustava? Review Board je besplatan alat otvorenog koda za pregled izvornog koda, dokumentacije, slika i još mnogo toga. To je web-bazirani softver

Postavite HTTP autentifikaciju pomoću Nginxa na CentOS 7

Postavite HTTP autentifikaciju pomoću Nginxa na CentOS 7

U ovom vodiču naučit ćete kako postaviti HTTP autentifikaciju za Nginx web poslužitelj koji radi na CentOS 7. Zahtjevi Da biste započeli, trebat će vam

Kako instalirati YOURLS na CentOS 7

Kako instalirati YOURLS na CentOS 7

YOURLS (Your Own URL Shortener) je aplikacija za skraćivanje URL-ova otvorenog koda i analizu podataka. U ovom članku ćemo pokriti proces instalacije

Kako instalirati i konfigurirati ArangoDB na CentOS 7

Kako instalirati i konfigurirati ArangoDB na CentOS 7

Korištenje drugog sustava? Uvod ArangoDB je NoSQL baza podataka otvorenog koda s fleksibilnim modelom podataka za dokumente, grafikone i ključ-vrijednosti. to je

Korištenje Etckeepera za kontrolu verzija /etc

Korištenje Etckeepera za kontrolu verzija /etc

Uvod Direktorij /etc/ igra ključnu ulogu u načinu na koji Linux sustav funkcionira. Razlog tome je što je gotovo svaka konfiguracija sustava

Zašto biste trebali koristiti SSHFS? Kako montirati udaljeni datotečni sustav sa SSHFS na CentOS 6

Zašto biste trebali koristiti SSHFS? Kako montirati udaljeni datotečni sustav sa SSHFS na CentOS 6

Mnogi administratori sustava upravljaju velikim količinama poslužitelja. Kada se datotekama treba pristupiti na različitim poslužiteljima, prijava na svaki pojedinačno ca

Postavljanje poslužitelja Half Life 2 na CentOS 6

Postavljanje poslužitelja Half Life 2 na CentOS 6

Ovaj vodič će pokriti proces instaliranja poslužitelja za igre Half Life 2 na sustavu CentOS 6. Korak 1: Instaliranje preduvjeta Kako biste postavili ou

Kako instalirati Laravel GitScrum na CentOS 7

Kako instalirati Laravel GitScrum na CentOS 7

Laravel GitScrum ili GitScrum je alat za produktivnost otvorenog koda dizajniran da pomogne razvojnim timovima da implementiraju Scrum metodologiju na sličan način.

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više