Telepítse a Plesket a CentOS 7 rendszeren
Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait
A Buildbot egy nyílt forráskódú, Python alapú, folyamatos integrációs eszköz a szoftverkészítés, -tesztelés és -telepítés automatizálására. A Buildbot egy vagy több Buildbot mesterből és számos dolgozóból áll. A Buildbot mester vagy a Buildmaster központi vezérléssel rendelkezik a rendszer felett. Felelős az építési környezet, a dolgozók irányításáért, és meghoz minden döntést a munkák munkásokhoz való küldésével kapcsolatban. A Buildmaster észleli a kódtárban történt változásokat, és elküldi a parancsokat vagy feladatokat a dolgozóknak végrehajtásra. A munkások végrehajtják a munkákat, és az eredményt visszaküldik az Építőmesternek. A Buildmaster ezután több támogatott csatornán keresztül értesíti a fejlesztőket. Ebben az oktatóanyagban telepítjük a Buildbot mestert és dolgozót a CentOS 7 rendszeren. A hitelesítést és az Nginxet is biztonságos fordított proxyként konfiguráljuk.
Ebben az oktatóanyagban 192.168.1.1
nyilvános IP-címként és ci.example.com
a Vultr példány felé mutató tartománynévként fogjuk használni . Kérjük, ügyeljen arra, hogy a példa domain név és IP-cím minden előfordulását lecserélje a ténylegesre.
Frissítse alaprendszerét a CentOS 7 frissítése útmutató segítségével . A rendszer frissítése után folytassa a PostgreSQL telepítésével.
Telepítse a Pip-et, amely a Python csomagkezelője.
sudo yum -y install epel-release
sudo yum -y install python-pip gcc python-devel git
sudo pip install --upgrade pip
A Buildbot többféle adatbázis-kiszolgálót támogat, mint például a MySQL, a PostgreSQL és az SQLite. Ebben az oktatóanyagban a PostgreSQL-t használjuk a Buildbot adatbázis-kiszolgáló hosztolására.
A PostgreSQL egy objektum-relációs adatbázisrendszer, amely stabilitásáról és sebességéről ismert. Az alapértelmezett yum
adattár a PostgreSQL régi verzióját tartalmazza, ezért adja hozzá a PostgreSQL tárat.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Telepítse a PostgreSQL adatbázis-kiszolgálót.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Inicializálja az adatbázist.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Indítsa el a PostgreSQL-kiszolgálót, és engedélyezze, hogy rendszerindításkor automatikusan elinduljon.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Módosítsa az alapértelmezett PostgreSQL-felhasználó jelszavát.
sudo passwd postgres
Jelentkezzen be PostgreSQL felhasználóként.
sudo su - postgres
Hozzon létre egy új PostgreSQL-felhasználót a Buildbot számára.
createuser bb_user
A helyett bármilyen felhasználónevet használhat bb_user
, ha úgy tetszik. A PostgreSQL biztosítja a psql
parancsértelmezőt a lekérdezések futtatásához az adatbázisban. Váltson a PostgreSQL rendszerhéjra.
psql
Állítson be jelszót az újonnan létrehozott felhasználó számára.
ALTER USER bb_user WITH ENCRYPTED password 'DBPassword';
Cserélje DBPassword
ki biztonságos jelszóra.
Hozzon létre egy új adatbázist a Buildbot telepítéséhez.
CREATE DATABASE buildbot OWNER bb_user;
Kilépés a psql
héjból.
\q
Váltás a sudo
felhasználóra.
exit
Szerkessze a pg_hba.conf
fájlt az MD5 alapú hitelesítés engedélyezéséhez.
sudo nano /var/lib/pgsql/10/data/pg_hba.conf
Keresse meg a következő sorokat, és módosítsa az oszlopban az értékeket peer
és az értékeket a és -ra.ident
METHOD
trust
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
Frissítés után a konfiguráció a következő szöveghez hasonlóan fog kinézni.
# 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
Mentse el a fájlt, és lépjen ki a szerkesztőből. Telepítse a PostgreSQL adatbázis-adaptert Pythonhoz.
sudo pip install psycopg2
Indítsa újra a PostgreSQL-t, hogy a változtatások érvénybe lépjenek.
sudo systemctl restart postgresql-10
Telepítse a Buildbotot a Pip használatával.
sudo pip install 'buildbot[bundle]' pyopenssl service_identity
A fenti parancs telepíti a Buildbotot a buildbot-www
, buildbot-worker
, és számos webbővítmény mellett, mint például a buildbot-waterfall-view
.
A Buildbot sikeres telepítése érdekében ellenőrizze a Buildbot verzióját.
buildbot --version
A kimenetnek a következő szöveghez kell hasonlítania.
[user@vultr ~]$ buildbot --version
Buildbot version: 0.9.15.post1
Twisted version: 17.9.0
Módosítsa tűzfalszabályait, hogy engedélyezze a portot 8010
. A Buildbot ezt a portot használja a webes kérések meghallgatására.
sudo firewall-cmd --zone=public --add-port=8010/tcp --permanent
sudo firewall-cmd --reload
Hozzon létre egy új, jogosulatlan felhasználót a Buildbot fő- és munkafolyamatainak futtatásához. Nem ajánlott felhasználóként futtatni a Buildbot főszolgáltatásokat root
.
sudo adduser buildbot
sudo passwd buildbot
Jelentkezzen be újonnan létrehozott buildbot
felhasználóként.
sudo su - buildbot
Állítsa be a Buildbot mestert a /home/buildbot/master
könyvtárban. Ez a könyvtár tartalmazza az egyes buildek konfigurációját, állapotát és naplófájljait.
buildbot create-master --db 'postgresql://bb_user:DBPassword@localhost/buildbot' ~/master
Ügyeljen arra, hogy a fenti parancsban cserélje ki az adatbázis-felhasználó hitelesítő adatait.
Megjegyzés: Ha a PostgreSQL helyett SQLite adatbázist szeretne használni, egyszerűen hagyja ki a --db 'postgresql://bb_user:DBpassword@localhost/buildbot'
lehetőséget. Az SQLite adatbázis ugyanabban a könyvtárban jön létre.
A fenti parancs létrehozza ~/master
a Buildmaster fájlok tárolására szolgáló könyvtárat. Az adatokat a PostgreSQL adatbázisba is írja. A következő kimenetet kapod.
[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
Másolja a minta konfigurációs fájlt egy élő konfigurációs fájlba.
cp ~/master/master.cfg.sample ~/master/master.cfg
Szerkessze a konfigurációs fájlt.
nano ~/master/master.cfg
Keresse meg a következő sorokat.
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",
}
A fenti konfiguráció egy mintamunkás bejegyzést tartalmaz. Módosítjuk annak a dolgozónak a mintabejegyzését, amelyen futni fogunk localhost
. Változtassa example-worker
meg a localhost
dolgozó bármely megfelelő nevére, és módosítsa a pass
jelszót egy másik jelszóra. Jegyezze fel a dolgozó nevét és jelszavát, mivel az oktatóanyag későbbi részében ezt meg fogjuk kérni. Módosítsa a munkás nevét az építők listájában. Módosítsa az alkalmazás nevét és a projekt URL-címét igényei szerint.
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.
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.
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.
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.
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.
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
A generált tanúsítványok valószínűleg a /etc/letsencrypt/live/ci.example.com/
könyvtárban lesznek tárolva . Az SSL-tanúsítvány a következőként lesz tárolva, fullchain.pem
a privát kulcs pedig mint privkey.pem
.
A Titkosított tanúsítványok 90 napon belül lejárnak, ezért ajánlatos beállítani a tanúsítványok automatikus megújítását Cron jobokkal.
Nyissa meg a felhasználó cron feladatfájlját root
.
sudo crontab -e
Adja hozzá a következő sort a fájl végéhez.
30 5 * * * /usr/bin/certbot renew --quiet
A fenti cron-feladat minden nap 5:30-kor fog futni. Ha a tanúsítvány lejár, automatikusan megújítja azokat.
Most módosítsa az Nginx alapértelmezett konfigurációs fájlját a default_server
sor eltávolításához .
sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf
Hozzon létre egy új konfigurációs fájlt a Buildbot webes felületéhez.
sudo nano /etc/nginx/conf.d/buildbot.conf
Töltse fel a fájlt.
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;
}
}
Ellenőrizze, hogy vannak-e hibák az új konfigurációs fájlban.
sudo nginx -t
Ha a következő kimenetet látja, a konfiguráció hibamentes.
[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
Ha valamilyen hibaüzenetet kapott, feltétlenül ellenőrizze az SSL-tanúsítványok elérési útját. Indítsa újra az Nginx webszervert a konfiguráció módosításának végrehajtásához.
sudo systemctl restart nginx
Nyissa meg a Buildmaster konfigurációs fájlját.
sudo su buildbot -c "nano /home/buildbot/master/master.cfg"
Keresse meg a következő sort.
c['buildbotURL'] = "http://192.168.1.1:8010/"
Módosítsa az URL-t a használt domain névnek megfelelően.
c['buildbotURL'] = "https://ci.example.com/"
Indítsa újra a Buildbot főszolgáltatást.
sudo systemctl restart buildbot
Mostantól elérheti a Buildbot irányítópultját a címen https://ci.example.com
. Látni fogja, hogy a Buildbothoz való kapcsolatok immár SSL-lel védettek.
Jelentkezzen be a rendszergazdai hitelesítő adatokkal, és adja hozzá az első folyamatot az alkalmazás felépítésének megkezdéséhez.
Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait
A Squid egy népszerű, ingyenes Linux-program, amely lehetővé teszi továbbítási webproxy létrehozását. Ebben az útmutatóban megtudhatja, hogyan telepítheti a Squid-et a CentOS rendszerre, hogy megfordítsa
Bevezetés A Lighttpd az Apache forkja, amely sokkal kevésbé erőforrás-igényes. Könnyű, innen kapta a nevét, és meglehetősen egyszerű a használata. Telepítés
A VULTR a közelmúltban változtatásokat hajtott végre a saját oldalukon, és most már mindennek jól kell működnie, ha a NetworkManager engedélyezve van. Ha szeretné letiltani
Az Icinga2 egy hatékony felügyeleti rendszer, és mester-kliens modellben használva helyettesítheti az NRPE-alapú felügyeleti ellenőrzések szükségességét. A mester-kliens
Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,
Más rendszert használ? A Microweber egy nyílt forráskódú drag and drop CMS és online bolt. A Microweber forráskódja a GitHubon található. Ez az útmutató megmutatja neked
Más rendszert használ? A Vanilla forum egy nyílt forráskódú, PHP-ben írt fórumalkalmazás. Ez egy teljesen testreszabható, könnyen használható, és támogatja a külsőt
Más rendszert használ? A Mattermost egy nyílt forráskódú, saját üzemeltetésű alternatívája a Slack SAAS üzenetküldő szolgáltatásnak. Más szóval, a Mattermost segítségével kb
Mire lesz szüksége Egy Vultr VPS legalább 1 GB RAM-mal. SSH hozzáférés (root/adminisztrátori jogosultságokkal). 1. lépés: A BungeeCord telepítése Először is
A Plesk vezérlőpult nagyon szép integrációt kínál a Lets Encrypt számára. A Lets Encrypt egyike az egyetlen SSL-szolgáltatónak, amely teljes tanúsítványt ad ki
A Lets Encrypt egy tanúsító hatóság, amely ingyenes SSL-tanúsítványokat biztosít. A cPanel ügyes integrációt épített ki, így Ön és ügyfele
Más rendszert használ? A Concrete5 egy nyílt forráskódú CMS, amely számos megkülönböztető és hasznos funkciót kínál, hogy segítse a szerkesztőket a tartalom egyszerű létrehozásában.
Más rendszert használ? A Review Board egy ingyenes és nyílt forráskódú eszköz a forráskód, a dokumentáció, a képek és még sok más áttekintésére. Ez egy web alapú szoftver
Ebből az útmutatóból megtudhatja, hogyan állíthat be HTTP-hitelesítést egy CentOS 7 rendszeren futó Nginx webszerverhez. Követelmények A kezdéshez szüksége lesz a következőre:
Más rendszert használ? A GoAccess egy nyílt forráskódú webnapló-elemző. Használhatja naplók valós idejű elemzésére akár a terminálon, akár a
A YOURLS (Your Own URL Shortener) egy nyílt forráskódú URL-rövidítő és adatelemző alkalmazás. Ebben a cikkben a telepítés folyamatával foglalkozunk
Más rendszert használ? Bevezetés Az ArangoDB egy nyílt forráskódú NoSQL adatbázis, amely rugalmas adatmodellt kínál dokumentumokhoz, grafikonokhoz és kulcsértékekhez. Ez
Bevezetés Az /etc/ könyvtár kritikus szerepet játszik a Linux rendszer működésében. Ennek az az oka, hogy szinte minden rendszerkonfiguráció
Sok rendszergazda nagy mennyiségű kiszolgálót kezel. Ha a fájlokhoz különböző szervereken keresztül kell hozzáférni, mindegyikbe külön-külön kell bejelentkezni kb
Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <<strong>>Windows ISO<<strong>> előállításának lépéseit az NTLite segítségével.
A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.
Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.
Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.
Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.
Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…
Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.
Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.
Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.
Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.