Sådan installeres og konfigureres Buildbot på CentOS 7

Buildbot er et open source, Python-baseret, kontinuerligt integrationsværktøj til at automatisere softwareopbygning, -testning og -implementering. Buildbot består af en eller flere Buildbot-mastere og et antal arbejdere. Buildbot master eller Buildmaster har central kommando over systemet. Det er ansvarligt for at styre byggemiljøet, arbejdere og træffer alle beslutninger om at sende job til arbejdere. Buildmaster registrerer ændringer i kodelageret og sender kommandoerne eller jobs til arbejderne for at udføre dem. Arbejdere udfører opgaverne og returnerer resultatet til Buildmasteren. Buildmaster underretter derefter udviklerne gennem flere understøttede kanaler. I denne vejledning vil vi installere Buildbot master og worker på CentOS 7. Vi vil også konfigurere godkendelse og Nginx som en sikret omvendt proxy.

Forudsætninger

  • En Vultr CentOS 7-serverinstans med mindst 1 GB RAM.
  • En sudo-bruger .
  • Et registreret domænenavn pegede mod serveren.

Til denne vejledning vil vi bruge 192.168.1.1som den offentlige IP-adresse og ci.example.comsom domænenavnet, der pegede mod Vultr-forekomsten. Sørg for at erstatte alle forekomster af eksempeldomænenavnet og IP-adressen med det faktiske.

Opdater dit basissystem ved hjælp af vejledningen Sådan opdaterer du CentOS 7 . Når dit system er blevet opdateret, skal du fortsætte med at installere PostgreSQL.

Installer Python Dependencies

Installer Pip, som er en pakkehåndtering til 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 understøtter flere typer databaseservere såsom MySQL, PostgreSQL og SQLite. I denne vejledning vil vi bruge PostgreSQL til at være vært for Buildbot-databaseserveren.

PostgreSQL er et objektrelationelt databasesystem, kendt for dets stabilitet og hastighed. Standardlageret yumindeholder en gammel version af PostgreSQL, så tilføj PostgreSQL-lageret.

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

Installer PostgreSQL-databaseserveren.

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

Initialiser databasen.

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

Start PostgreSQL-serveren og aktiver den til at starte automatisk ved opstart.

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

Skift adgangskoden til standard PostgreSQL-brugeren.

sudo passwd postgres

Log ind som PostgreSQL-bruger.

sudo su - postgres

Opret en ny PostgreSQL-bruger til Buildbot.

createuser bb_user

Du kan bruge et hvilket som helst brugernavn i stedet for bb_user, hvis du foretrækker det. PostgreSQL leverer psqlskallen til at køre forespørgsler på databasen. Skift til PostgreSQL-skallen.

psql

Indstil en adgangskode til den nyoprettede bruger.

ALTER USER bb_user WITH ENCRYPTED password 'DBPassword';

Erstat DBPasswordmed en sikker adgangskode.

Opret en ny database til Buildbot-installationen.

CREATE DATABASE buildbot OWNER bb_user;

Udgang fra psqlskallen.

\q

Skift til sudobrugeren.

exit

Rediger pg_hba.conffilen for at aktivere MD5-baseret godkendelse.

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

Find følgende linjer og ændre værdierne peerog identi METHODkolonnen, til trustog md5hhv.

# 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

Når den er opdateret, vil konfigurationen se ud som følgende 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

Gem filen og afslut editoren. Installer PostgreSQL-databaseadapteren til Python.

sudo pip install psycopg2

Genstart PostgreSQL, så ændringerne kan træde i kraft.

sudo systemctl restart postgresql-10

Installer Buildbot

Installer Buildbot ved hjælp af Pip.

sudo pip install 'buildbot[bundle]' pyopenssl service_identity

Ovenstående kommando vil installere Buildbot sammen med buildbot-www, buildbot-worker, og flere web-plugins som f.eks buildbot-waterfall-view.

For at sikre, at Buildbot er blevet installeret korrekt, kan du bekræfte ved at kontrollere versionen af ​​Buildbot.

buildbot --version

Outputtet skal ligne følgende tekst.

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

Rediger dine firewallregler for at tillade port 8010. Buildbot bruger denne port til at lytte til webanmodningerne.

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

Konfigurer Buildbot Master

Opret en ny uprivilegeret bruger til at køre Buildbot-master- og arbejdsprocesser. Det anbefales ikke at køre Buildbot master-tjenester som rootbruger.

sudo adduser buildbot
sudo passwd buildbot

Log ind som den nyoprettede buildbotbruger.

sudo su - buildbot

Konfigurer Buildbot-masteren i /home/buildbot/mastermappen. Denne mappe vil indeholde konfiguration, status og logfiler for hver build.

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

Sørg for at erstatte databasebrugerens legitimationsoplysninger i ovenstående kommando.

Bemærk: Hvis du ønsker at bruge SQLite-databasen i stedet for PostgreSQL, skal du blot udelade --db 'postgresql://bb_user:DBpassword@localhost/buildbot'indstillingen. SQLite-databasen vil blive oprettet i den samme mappe.

Ovenstående kommando vil oprette ~/mastermappen til at gemme Buildmaster-filerne. Det vil også skrive dataene ind i PostgreSQL-databasen. Du får følgende output.

[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

Kopier eksempelkonfigurationsfilen til en live konfigurationsfil.

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

Rediger konfigurationsfilen.

nano ~/master/master.cfg

Find følgende linjer.

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

Ovenstående konfiguration har en indgang for en prøvearbejder. Vi vil ændre prøveindgangen for den arbejder, vi kører på localhost. Skift example-workertil et passende navn for localhostarbejderen og skift passtil et andet kodeord. Noter arbejderens navn og adgangskode, da vi vil kræve det senere i selvstudiet. Skift navnet på arbejderen i listen over bygherrer. Skift navnet på applikationen og projektets URL i overensstemmelse med dine behov.

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.

Sådan installeres og konfigureres Buildbot på 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.

Sådan installeres og konfigureres Buildbot på 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.

Sådan installeres og konfigureres Buildbot på 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

De genererede certifikater vil sandsynligvis blive gemt i /etc/letsencrypt/live/ci.example.com/mappen. SSL-certifikatet vil blive gemt som, fullchain.pemog den private nøgle vil blive gemt som privkey.pem.

Lad os kryptere certifikater udløber om 90 dage, derfor anbefales det at konfigurere automatisk fornyelse af certifikaterne ved hjælp af Cron-job.

Åbn cron-jobfilen for rootbrugeren.

sudo crontab -e

Tilføj følgende linje i slutningen af ​​filen.

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

Ovenstående cron-job kører hver dag kl. 5:30. Hvis certifikatet skal udløbe, vil det automatisk forny dem.

Skift nu Nginx-standardkonfigurationsfilen for at fjerne default_serverlinjen.

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

Opret en ny konfigurationsfil til Buildbot-webgrænsefladen.

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

Udfyld filen.

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

Tjek for fejlene i den nye konfigurationsfil.

sudo nginx -t

Hvis du ser følgende output, er konfigurationen fejlfri.

[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

Hvis du har modtaget en form for fejl, skal du sørge for at dobbelttjekke stien til SSL-certifikaterne. Genstart Nginx-webserveren for at implementere ændringen i konfigurationen.

sudo systemctl restart nginx

Åbn Buildmaster-konfigurationsfilen.

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

Find følgende linje.

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

Skift URL'en i henhold til det domænenavn, du bruger.

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

Genstart Buildbot-mastertjenesten.

sudo systemctl restart buildbot

Nu kan du få adgang til Buildbot-dashboardet på https://ci.example.com. Du vil se, at forbindelserne til Buildbot nu er sikret med SSL.

Sådan installeres og konfigureres Buildbot på CentOS 7

Log ind med administratoroplysningerne og tilføj din første pipeline for at begynde at bygge din applikation.


Installer Plesk på CentOS 7

Installer Plesk på CentOS 7

Bruger du et andet system? Plesk er et proprietært webhost kontrolpanel, der giver brugerne mulighed for at administrere deres personlige og/eller klienters websteder, databaser

Sådan installeres Squid Proxy på CentOS

Sådan installeres Squid Proxy på CentOS

Squid er et populært, gratis Linux-program, der giver dig mulighed for at oprette en webproxy til videresendelse. I denne vejledning vil du se, hvordan du installerer Squid på CentOS for at gøre dig

Sådan installeres Lighttpd (LLMP Stack) på CentOS 6

Sådan installeres Lighttpd (LLMP Stack) på CentOS 6

Introduktion Lighttpd er en forgrening af Apache, der sigter mod at være meget mindre ressourcekrævende. Den er let, deraf navnet, og den er ret enkel at bruge. Installer

Konfiguration af statisk netværk og IPv6 på CentOS 7

Konfiguration af statisk netværk og IPv6 på CentOS 7

VULTR har for nylig foretaget ændringer i deres ende, og alt skulle nu fungere fint ud af boksen med NetworkManager aktiveret. Skulle du ønske at deaktivere

Ændring af Icinga2 til at bruge Master/Client Model på CentOS 6 eller CentOS 7

Ændring af Icinga2 til at bruge Master/Client Model på CentOS 6 eller CentOS 7

Icinga2 er et kraftfuldt overvågningssystem, og når det bruges i en master-klient-model, kan det erstatte behovet for NRPE-baserede overvågningstjek. Mester-klienten

Sådan installeres Apache Cassandra 3.11.x på CentOS 7

Sådan installeres Apache Cassandra 3.11.x på CentOS 7

Bruger du et andet system? Apache Cassandra er et gratis og open source NoSQL-databasestyringssystem, der er designet til at give skalerbarhed, høj

Sådan installeres Microweber på CentOS 7

Sådan installeres Microweber på CentOS 7

Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig

Sådan installeres Mattermost 4.1 på CentOS 7

Sådan installeres Mattermost 4.1 på CentOS 7

Bruger du et andet system? Mattermost er et open source, selvhostet alternativ til Slack SAAS-meddelelsestjenesten. Med andre ord, med Mattermost er du ca

Oprettelse af et netværk af Minecraft-servere med BungeeCord på Debian 8, Debian 9 eller CentOS 7

Oprettelse af et netværk af Minecraft-servere med BungeeCord på Debian 8, Debian 9 eller CentOS 7

Hvad skal du bruge En Vultr VPS med mindst 1 GB RAM. SSH-adgang (med root/administrative rettigheder). Trin 1: Installation af BungeeCord Første ting først

Lad os kryptere på Plesk

Lad os kryptere på Plesk

Plesk-kontrolpanelet har en meget flot integration til Lets Encrypt. Lets Encrypt er en af ​​de eneste SSL-udbydere, der udleverer certifikater komplet

Lader kryptere på cPanel

Lader kryptere på cPanel

Lets Encrypt er en certifikatmyndighed dedikeret til at levere SSL-certifikater gratis. cPanel har bygget en pæn integration, så du og din klient

Sådan installeres Concrete5 på CentOS 7

Sådan installeres Concrete5 på CentOS 7

Bruger du et andet system? Concrete5 er et open source CMS, som tilbyder mange karakteristiske og nyttige funktioner til at hjælpe redaktører med at producere indhold nemt og

Sådan installeres Review Board på CentOS 7

Sådan installeres Review Board på CentOS 7

Bruger du et andet system? Review Board er et gratis og open source-værktøj til gennemgang af kildekode, dokumentation, billeder og mange flere. Det er webbaseret software

Konfigurer HTTP-godkendelse med Nginx på CentOS 7

Konfigurer HTTP-godkendelse med Nginx på CentOS 7

I denne vejledning lærer du, hvordan du opsætter HTTP-godkendelse for en Nginx-webserver, der kører på CentOS 7. Krav For at komme i gang skal du bruge

Sådan installeres YOURLS på CentOS 7

Sådan installeres YOURLS på CentOS 7

YOURLS (Your Own URL Shortener) er en open source URL-forkortelse og dataanalyseapplikation. I denne artikel vil vi dække installationsprocessen

Sådan installeres og konfigureres ArangoDB på CentOS 7

Sådan installeres og konfigureres ArangoDB på CentOS 7

Bruger du et andet system? Introduktion ArangoDB er en open source NoSQL-database med en fleksibel datamodel for dokumenter, grafer og nøgleværdier. det er

Brug af Etckeeper til versionskontrol af /etc

Brug af Etckeeper til versionskontrol af /etc

Introduktion /etc/-biblioteket spiller en afgørende rolle i den måde et Linux-system fungerer på. Årsagen til dette er, at næsten alle systemkonfigurationer

Hvorfor skal du bruge SSHFS? Sådan monteres et eksternt filsystem med SSHFS på CentOS 6

Hvorfor skal du bruge SSHFS? Sådan monteres et eksternt filsystem med SSHFS på CentOS 6

Mange systemadministratorer administrerer store mængder servere. Når filer skal tilgås på tværs af forskellige servere, logges ind på hver enkelt individuelt ca

Opsætning af en Half Life 2-server på CentOS 6

Opsætning af en Half Life 2-server på CentOS 6

Denne vejledning vil dække processen med at installere en Half Life 2-spilserver på CentOS 6 System. Trin 1: Installation af forudsætninger For at opsætte ou

Sådan installeres Laravel GitScrum på CentOS 7

Sådan installeres Laravel GitScrum på CentOS 7

Laravel GitScrum eller GitScrum er et open source-produktivitetsværktøj designet til at hjælpe udviklingsteams med at implementere Scrum-metoden på en måde, der ligner t.

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.

DDOS-angreb: et kort overblik

DDOS-angreb: et kort overblik

Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.

Udvikling af datalagring – Infografik

Udvikling af datalagring – Infografik

Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af ​​dataene. Denne blog dækker udviklingen af ​​datalagring på basis af en infografik.

Funktioner af Big Data Reference Architecture Layers

Funktioner af Big Data Reference Architecture Layers

Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af ​​mac-maskiner. Læs denne artikel for at lære mere