Kā instalēt un konfigurēt Concourse CI Ubuntu 16.04

Ievads

Nepārtrauktā integrācija ir DevOps programmatūras izstrādes prakse, kas ļauj izstrādātājiem bieži apvienot modificēto kodu koplietotajā repozitorijā daudzas reizes dienā. Pēc katras sapludināšanas tiek veiktas automātiskas būves un testi, lai atklātu problēmas kodā. Tas ļauj izstrādātājiem ātri atrast un novērst kļūdas, lai uzlabotu programmatūras kvalitāti un nodrošinātu nepārtrauktu programmatūras piegādi. Pārslēgšanās uz priekšu un atpakaļ no Concourse ir ļoti vienkārša, jo tā saglabā visu savu konfigurāciju deklaratīvajos failos, kurus var pārbaudīt versiju kontrolē. Tas nodrošina arī tīmekļa lietotāja saskarni, kas interaktīvi parāda būvējuma informāciju.

Sacensību sastāvdaļas.
  • ATC ir galvenā sacensību sastāvdaļa. Tas ir atbildīgs par Web UI un API palaišanu. Tas arī rūpējas par visu cauruļvadu plānošanu.
  • TSA ir pielāgots SSH serveris. Tā ir atbildīga par darba ņēmēja drošu reģistrēšanu ATC.
  • Darbinieki tālāk nodrošina divus dažādus pakalpojumus:
    1. Garden ir konteinera izpildlaiks un interfeiss konteineru attālai vadīšanai uz darbinieka.
    2. Baggageclaim ir kešatmiņas un artefaktu pārvaldības serveris.
  • Fly ir komandrindas saskarne, ko izmanto, lai mijiedarbotos ar ATC, lai konfigurētu Concourse Pipelines.

Priekšnoteikumi

Noteikti aizstājiet visus gadījumus 192.0.2.1 un ci.example.com ar savu faktisko Vultr publisko IP adresi un faktisko domēna nosaukumu.

Atjauniniet savu bāzes sistēmu, izmantojot rokasgrāmatu Kā atjaunināt Ubuntu 16.04 . Kad sistēma ir atjaunināta, turpiniet instalēt PostgreSQL.

Instalējiet un konfigurējiet PostgreSQL datu bāzi

PostgreSQL ir objektu relāciju datu bāzes sistēma. Concourse savus konveijera datus saglabā PostgreSQL datu bāzē. Pievienojiet PostgreSQL repozitoriju.

echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update

Instalējiet PostgreSQL datu bāzes serveri.

sudo apt -y install postgresql

Palaidiet PostgreSQL serveri un iespējojiet tā automātisku palaišanu sāknēšanas laikā.

sudo systemctl start postgresql
sudo systemctl enable postgresql

Mainiet noklusējuma PostgreSQL lietotāja paroli.

sudo passwd postgres

Piesakieties kā PostgreSQL lietotājs:

sudo su - postgres

Izveidojiet jaunu PostgreSQL lietotāju Concourse CI.

createuser concourse

Piezīme : Noklusējuma PostgreSQL lietotāju var izmantot datu bāzes autentifikācijai, taču ir ieteicams izmantot īpašu lietotāju Concourse datu bāzes autentifikācijai ražošanas iestatījumos.

PostgreSQL nodrošina čaulu, lai palaistu vaicājumus datu bāzē. Pārslēdzieties uz PostgreSQL čaulu.

psql

Iestatiet paroli jaunizveidotajam Concourse datu bāzes lietotājam.

ALTER USER concourse WITH ENCRYPTED password 'DBPassword';

Svarīgi : nomainiet DBPassword ar spēcīgu paroli. Pierakstiet paroli, jo tā būs nepieciešama vēlāk apmācībā.

Izveidojiet jaunu datubāzi Concourse.

CREATE DATABASE concourse OWNER concourse;

Iziet no psql čaulas.

\q

Pārslēdzieties uz sudo lietotāju no pašreizējā postgreslietotāja.

exit

Lejupielādējiet un instalējiet Concourse CI

Lejupielādējiet Concourse izpildāmā faila jaunāko versiju un saglabājiet to, /usr/bin lai to varētu izpildīt tieši. Jaunākā Concourse un Fly bināro failu versija ir atrodama Concourse lejupielādes lapā . Jauni izlaidumi ir ļoti bieži. Aizstājiet tālāk esošo saiti ar jauno saiti jaunākajai versijai.

sudo wget https://github.com/concourse/concourse/releases/download/v3.10.0/concourse_linux_amd64 -O /usr/bin/concourse

Tāpat lejupielādējiet jaunāko izpildāmā faila versiju un saglabājiet to /usr/bin.

sudo wget https://github.com/concourse/concourse/releases/download/v3.10.0/fly_linux_amd64 -O /usr/bin/fly

Fly ir komandrindas saskarne, ko izmanto, lai izveidotu savienojumu ar Concourse CI ATC API. Fly ir pieejams vairākām platformām, piemēram, Linux, Windows un MacOS.

Piešķiriet izpildes atļauju lejupielādētajiem concourse un fly binārajiem failiem.

sudo chmod +x /usr/bin/concourse /usr/bin/fly

Pārbaudiet, vai Concourse un Fly darbojas pareizi, pārbaudot to versiju.

concourse -version
fly -version

Ģenerējiet un iestatiet RSA atslēgas

RSA atslēgu pāri nodrošina veidu, kā šifrēt saziņu starp Sacensību komponentiem.

Lai Concourse darbotos, ir jāģenerē vismaz trīs atslēgu pāri. Lai šifrētu sesijas datus, ģenerējiet session_signing_key. Šo atslēgu izmantos arī TSA, lai parakstītu pieprasījumus, ko tā iesniedz ATC. Lai aizsargātu TSA SSH serveri, ģenerējiet tsa_host_key. Visbeidzot, ģenerējiet worker_key katram darbiniekam.

Izveidojiet jaunu direktoriju, lai saglabātu atslēgas un konfigurāciju saistībā ar Concourse CI.

sudo mkdir /opt/concourse

Ģenerējiet nepieciešamās atslēgas.

sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/session_signing_key
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/tsa_host_key
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/worker_key

Autorizējiet darbinieku publisko atslēgu, kopējot tās saturu authorized_worker_keys failā.

sudo cp /opt/concourse/worker_key.pub /opt/concourse/authorized_worker_keys

Sacensību sākums

Concourse nodrošina divus atsevišķus komponentus, kas jāsāk: tīmeklis un darbinieks. Sāciet Concourse tīmekli.

sudo concourse web \
  --basic-auth-username admin \
  --basic-auth-password StrongPass \
  --session-signing-key /opt/concourse/session_signing_key \
  --tsa-host-key /opt/concourse/tsa_host_key \
  --tsa-authorized-keys /opt/concourse/authorized_worker_keys \
  --postgres-user=concourse \
  --postgres-password=DBPassword \
  --postgres-database=concourse \
  --external-url http://192.0.2.1:8080

basic-auth Ja vēlaties, mainiet lietotājvārdu un paroli . Pārliecinieties, vai ceļš uz atslēgas failiem ir pareizs, un pārliecinieties, vai PostgreSQL datu bāzes konfigurācijā ir norādīta pareizā lietotājvārda un paroles vērtība.

Piezīme : ATC klausīsies noklusējuma portu 8080 un TSA klausīsies portu 2222. Ja autentifikācija nav vēlama, nododiet šo --no-really-i-dont-want-any-authopciju pēc pamata autentifikācijas opciju noņemšanas.

Kad tīmekļa serveris ir startēts, tiks parādīta šāda izvade.

{"timestamp":"1503657859.661247969","source":"tsa","message":"tsa.listening","log_level":1,"data":{}}
{"timestamp":"1503657859.666907549","source":"atc","message":"atc.listening","log_level":1,"data":{"debug":"127.0.0.1:8079","http":"0.0.0.0:8080"}}

Pagaidām apturiet serveri, jo vēl ir jāiestata vēl dažas lietas.

Sāciet Concourse CI Worker.

sudo concourse worker \
  --work-dir /opt/concourse/worker \
  --tsa-host 127.0.0.1 \
  --tsa-public-key /opt/concourse/tsa_host_key.pub \
  --tsa-worker-private-key /opt/concourse/worker_key

Iepriekš minētā komanda pieņems, ka TSA darbojas uz localhost un klausās noklusējuma portu 2222.

Lai gan Concourse tīmekli un darbinieku var viegli palaist, izmantojot iepriekš minētās komandas, servera pārvaldībai ieteicams izmantot Systemd.

Konfigurējiet vidi un Systemd pakalpojumu

Pakalpojuma Systemd izmantošana lietojumprogrammas pārvaldībai nodrošina, ka lietojumprogramma tiek automātiski startēta kļūmju gadījumā un sāknēšanas laikā. Concourse serveris neņem datus no neviena konfigurācijas faila, bet var piekļūt datiem no vides mainīgajiem. Tā vietā, lai iestatītu globālos vides mainīgos, izveidojiet jaunu failu vides mainīgo glabāšanai un pēc tam nosūtiet mainīgos Concourse CI, izmantojot Systemd pakalpojumu.

Izveidojiet jaunu vides failu Concourse Web.

sudo nano /opt/concourse/web.env

Aizpildiet failu.

CONCOURSE_SESSION_SIGNING_KEY=/opt/concourse/session_signing_key
CONCOURSE_TSA_HOST_KEY=/opt/concourse/tsa_host_key
CONCOURSE_TSA_AUTHORIZED_KEYS=/opt/concourse/authorized_worker_keys

CONCOURSE_POSTGRES_USER=concourse
CONCOURSE_POSTGRES_PASSWORD=DBPassword
CONCOURSE_POSTGRES_DATABASE=concourse

CONCOURSE_BASIC_AUTH_USERNAME=admin
CONCOURSE_BASIC_AUTH_PASSWORD=StrongPass
CONCOURSE_EXTERNAL_URL=http://192.0.2.1:8080

BASIC_AUTH Ja vēlaties, mainiet lietotājvārdu un paroli . Pārliecinieties, vai ceļš uz atslēgas failiem ir pareizs, un pārliecinieties, vai PostgreSQL datu bāzes konfigurācijā ir norādīta pareizā lietotājvārda un paroles vērtība.

Līdzīgi izveidojiet vides failu darbiniekam.

sudo nano /opt/concourse/worker.env

Aizpildiet failu.

CONCOURSE_WORK_DIR=/opt/concourse/worker
CONCOURSE_TSA_WORKER_PRIVATE_KEY=/opt/concourse/worker_key
CONCOURSE_TSA_PUBLIC_KEY=/opt/concourse/tsa_host_key.pub
CONCOURSE_TSA_HOST=127.0.0.1

Tā kā vides faili satur lietotājvārdus un paroles, mainiet tā atļaujas, lai citi lietotāji tiem nevarētu piekļūt.

sudo chmod 600 /opt/concourse/*.env

Tagad izveidojiet jaunu lietotāju Concourse, lai palaistu tīmekļa vidi. Tas nodrošinās, ka tīmekļa serveris darbojas izolētā vidē.

sudo useradd concourse

Piešķiriet Concourse lietotājam īpašumtiesības uz Concourse CI faila direktoriju.

sudo chown -R concourse:concourse /opt/concourse

Izveidojiet jaunu sistēmas pakalpojuma failu Concourse tīmekļa pakalpojumam.

sudo nano /etc/systemd/system/concourse-web.service

Aizpildiet failu.

[Unit]
Description=Concourse CI web server

[Service]
Type=simple
User=concourse
Group=concourse
Restart=on-failure
EnvironmentFile=/opt/concourse/web.env
ExecStart=/usr/bin/concourse web
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=concourse_web

[Install]
WantedBy=multi-user.target

Saglabājiet un aizveriet failu. Izveidojiet jaunu pakalpojuma failu Concourse darbinieka pakalpojumam.

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

Aizpildiet failu.

[Unit]
Description=Concourse CI worker process

[Service]
Type=simple
Restart=on-failure
EnvironmentFile=/opt/concourse/worker.env
ExecStart=/usr/bin/concourse worker
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=concourse_worker

[Install]
WantedBy=multi-user.target

Tīmekļa un darbinieku pakalpojumu tagad var palaist tieši.

sudo systemctl start concourse-web concourse-worker

Lai iespējotu darbinieka un tīmekļa procesa automātisku sākšanu sāknēšanas laikā, izpildiet tālāk norādīto.

sudo systemctl enable concourse-worker concourse-web

Lai pārbaudītu pakalpojumu statusu, izpildiet tālāk norādīto.

sudo systemctl status concourse-worker concourse-web

Ja pakalpojums nav palaists vai atrodas FAILED stāvoklī, noņemiet kešatmiņu no /tmp direktorija.

sudo rm -rf /tmp/*

Restartējiet pakalpojumus.

sudo systemctl restart concourse-worker concourse-web

Ņemiet vērā, ka šoreiz pakalpojumi ir sākušies pareizi. Pārbaudot pakalpojumu statusu, rezultāts būs līdzīgs šim.

[user@vultr ~]$ sudo systemctl status concourse-worker concourse-web
● concourse-worker.service - Concourse CI worker process
   Loaded: loaded (/etc/systemd/system/concourse-worker.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2017-08-26 07:27:37 UTC; 55s ago
 Main PID: 3037 (concourse)
   CGroup: /system.slice/concourse-worker.service
           └─3037 /usr/bin/concourse worker

Aug 26 07:27:42 vultr.guest concourse_worker[3037]: {"timestamp":"1503732462.934722900","source":"tsa","message":"t...""}}
Aug 26 07:27:42 vultr.guest concourse_worker[3037]: {"timestamp":"1503732462.941227913","source":"guardian","messag...0"}}

...

● concourse-web.service - Concourse CI web server
   Loaded: loaded (/etc/systemd/system/concourse-web.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2017-08-26 07:27:37 UTC; 55s ago
 Main PID: 3036 (concourse)
   CGroup: /system.slice/concourse-web.service
           └─3036 /usr/bin/concourse web

Aug 26 07:27:57 vultr.guest concourse_web[3036]: {"timestamp":"1503732477.925554752","source":"tsa","message":"tsa...ve"}}
Aug 26 07:28:02 vultr.guest concourse_web[3036]: {"timestamp":"1503732482.925430775","source":"tsa","message":"tsa...ve"}}
...
Hint: Some lines were ellipsized, use -l to show in full.

Savienojuma izveide ar serveri

Kad serveris ir palaists, Concourse CI tīmekļa saskarnei var piekļūt, atverot http://192.0.2.1:8080 jebkurā pārlūkprogrammā. Piesakieties, izmantojot vides failā norādīto lietotājvārdu un paroli.

Lai izveidotu savienojumu ar serveri, izmantojot Fly, izpildiet tālāk norādītās darbības.

fly -t my-ci login -c http://192.0.2.1:8080

Iepriekš minētā komanda tiek izmantota sākotnējai pieteikšanās serverī. -t tiek izmantots, lai norādītu mērķa nosaukumu. aizstāt my-ci ar jebkuru vēlamo mērķa nosaukumu. Iepriekš minētā komanda pieteiksies noklusējuma komandā main. Tas prasīs vides failā norādīto lietotājvārdu un paroli.

Izvade izskatīsies šādi.

[user@vultr ~]$ fly -t my-ci login -c http://192.0.2.1:8080
logging in to team 'main'

username: admin
password:

target saved

Mērķa pieteikšanās tiks saglabāta vienu dienu. Pēc tam tas beigsies.

Lai nekavējoties izietu.

fly -t my-ci logout

Fly var izmantot, lai pieteiktos serverī ārpus tīkla, taču tikai tad, ja serverim ir publiska IP adrese un tā ir pieejama ārpus tīkla. Windows vai MacOS bināro versiju var lejupielādēt no lejupielādes vietnes vai servera tīmekļa lietotāja interfeisa.

Nginx reversā starpniekservera iestatīšana

Pieteikšanās un cita informācija, kas tiek nosūtīta, izmantojot tīmekļa lietotāja interfeisu uz Concourse serveri, nav aizsargāta. Savienojums nav šifrēts. Nginx reverso starpniekserveri var iestatīt, izmantojot Let's Encrypt bezmaksas SSL.

Instalējiet Nginx.

sudo apt -y install nginx

Palaidiet Nginx un iespējojiet to automātiski palaist sāknēšanas laikā.

sudo systemctl start nginx
sudo systemctl enable nginx

Pievienojiet Certbot repozitoriju.

sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update

Instalējiet Certbot, kas ir Let's Encrypt CA klienta lietojumprogramma.

sudo apt -y install certbot

Piezīme . Lai iegūtu sertifikātus no Let's Encrypt CA, domēnam, kuram ir jāģenerē sertifikāti, jābūt norādītam uz serveri. Ja nē, veiciet nepieciešamās izmaiņas domēna DNS ierakstos un pagaidiet, līdz DNS tiek izplatīts, pirms vēlreiz veicat sertifikāta pieprasījumu. Certbot pirms sertifikātu sniegšanas pārbauda domēna iestādi.

Ģenerējiet SSL sertifikātus.

sudo certbot certonly --webroot -w /var/www/html -d ci.example.com

Ģenerētie sertifikāti, visticamāk, tiks saglabāti /etc/letsencrypt/live/ci.example.com/ direktorijā. SSL sertifikāts tiks saglabāts kā , fullchain.pem un privātā atslēga tiks saglabāta kā privkey.pem.

Sertifikātu šifrēšanas derīguma termiņš beidzas 90 dienu laikā, tāpēc ir ieteicams automātisku sertifikātu atjaunošanu iestatīt, izmantojot cronjobs. Cron ir sistēmas pakalpojums, ko izmanto periodisku uzdevumu izpildei.

Atveriet cron darba failu.

sudo crontab -e

Faila beigās pievienojiet šādu rindu.

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

Iepriekš minētais cron darbs darbosies katru dienu plkst. 5:30. Ja sertifikātam beidzas derīguma termiņš, tas tiks automātiski atjaunots.

Izveidojiet jaunu virtuālo saimniekdatoru.

sudo nano /etc/nginx/sites-available/concourse

Aizpildiet failu.

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

    listen 443;
    server_name ci.example.com;

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

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

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

    location / {

      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_pass          http://localhost:8080;
      proxy_read_timeout  90;

      proxy_redirect      http://localhost:8080 https://ci.example.com;
    }
  }

Piezīme . Aizstāt ci.example.com ar faktisko domēnu.

Aktivizējiet konfigurācijas failu.

sudo ln -s /etc/nginx/sites-available/concourse /etc/nginx/sites-enabled/concourse

Rediģējiet vides failu, kas izveidots konferencei Web.

sudo nano /opt/concourse/web.env

Mainiet vērtību CONCOURSE_EXTERNAL_URL un pievienojiet vēl divas rindiņas faila beigās.

CONCOURSE_EXTERNAL_URL=https://ci.example.com
CONCOURSE_BIND_IP=127.0.0.1
CONCOURSE_BIND_PORT=8080

Saglabājiet failu un restartējiet Concourse Web, Worker un Nginx.

sudo systemctl restart concourse-worker concourse-web nginx

Visi dati, kas tiek nosūtīti uz pārlūkprogrammu un no tās, tagad ir aizsargāti ar SSL šifrēšanu.


Kā instalēt Jenkins operētājsistēmā CentOS 7

Kā instalēt Jenkins operētājsistēmā CentOS 7

Jenkins ir populārs atvērtā pirmkoda CI (Continuous Integration) rīks, ko plaši izmanto projektu izstrādei, izvietošanai un automatizācijai. Šis raksts tiks

Kā instalēt un konfigurēt Concourse CI Ubuntu 16.04

Kā instalēt un konfigurēt Concourse CI Ubuntu 16.04

Vai izmantojat citu sistēmu? Ievads Nepārtrauktā integrācija ir DevOps programmatūras izstrādes prakse, kas ļauj izstrādātājiem bieži apvienot

Kā instalēt un konfigurēt Ansible operētājsistēmā Debian 9 lietošanai ar Windows Server

Kā instalēt un konfigurēt Ansible operētājsistēmā Debian 9 lietošanai ar Windows Server

Vai izmantojat citu sistēmu? Ansible ir atvērtā pirmkoda rīks uzdevumu automatizēšanai. Tas pārvalda jūsu Linux un Windows serveru konfigurāciju. Tas strādā

Kā instalēt un konfigurēt GoCD operētājsistēmā CentOS 7

Kā instalēt un konfigurēt GoCD operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? GoCD ir atvērtā koda nepārtrauktas piegādes un automatizācijas sistēma. Tas ļauj modelēt sarežģītas darbplūsmas, izmantojot tās paralēlo an

SaltStack izmantošana ar pīlāriem Ubuntu 17.04

SaltStack izmantošana ar pīlāriem Ubuntu 17.04

Lai gan SaltStack ir lielisks rīks darbību veikšanai daudzos serveros vienlaikus, tas atbalsta arī katram resursdatoram definētus konfigurācijas sākotnējos iestatījumus, kas saglabāti

Kā instalēt un konfigurēt Ansible operētājsistēmā CentOS 7 lietošanai ar Windows Server

Kā instalēt un konfigurēt Ansible operētājsistēmā CentOS 7 lietošanai ar Windows Server

Vai izmantojat citu sistēmu? Ansible ir atvērtā pirmkoda rīks uzdevumu automatizēšanai. Tas pārvalda jūsu Linux un Windows serveru konfigurāciju. Tas strādā

How to Install Drone CI on Ubuntu 18.04

How to Install Drone CI on Ubuntu 18.04

Introduction Drone is an automated, continuous testing and delivery platform which runs on your own infrastructure. Drone supports any language, service o

Vultr Load Balancers

Vultr Load Balancers

Kas ir slodzes līdzsvarotājs Slodzes līdzsvarotāji atrodas jūsu lietojumprogrammas priekšā un sadala ienākošo trafiku vairākos jūsu lietojumprogrammas gadījumos. Fo

Kā instalēt Foreman operētājsistēmā CentOS 7

Kā instalēt Foreman operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Foreman ir bezmaksas atvērtā koda rīks, kas palīdz konfigurēt un pārvaldīt fiziskos un virtuālos serverus. Forema

Kā instalēt SaltStack operētājsistēmā CentOS 7

Kā instalēt SaltStack operētājsistēmā CentOS 7

SaltStack jeb Salt ir populārs atvērtā pirmkoda konfigurācijas pārvaldības risinājums, ko var izmantot attālinātas izpildes, konfigurācijas pārvaldības, kodēšanas ieviešanai.

Kā instalēt Strider kompaktdisku Ubuntu 18.04

Kā instalēt Strider kompaktdisku Ubuntu 18.04

Ievads Strider CD ir atvērtā koda nepārtrauktas izvietošanas platforma. Lietojumprogramma ir rakstīta Node.js un izmanto MongoDB kā krātuves aizmugursistēmu. Solis

Chocolatey Package Manager izmantošana operētājsistēmā Windows

Chocolatey Package Manager izmantošana operētājsistēmā Windows

Ievads Chocolatey nodrošina pakotņu pārvaldību, kas atvieglo programmatūras un atkarību administrēšanu operētājsistēmā Linux sistēmā Windows. Jūs varat ātri un viegli

Momentuzņēmumu izveide, izmantojot pakotāju

Momentuzņēmumu izveide, izmantojot pakotāju

Kas ir Packer? Packer ir servera attēlveidošanas rīks, ko izstrādājis HashiCorp. Servera attēlveidošana; vai alternatīvi, nemainīga infrastruktūra; ir populāra alternatīva

Kā instalēt un konfigurēt Concourse CI operētājsistēmā CentOS 7

Kā instalēt un konfigurēt Concourse CI operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Ievads Nepārtrauktā integrācija ir DevOps programmatūras izstrādes prakse, kas ļauj izstrādātājiem bieži apvienot

Chef-solo izmantošana, lai konfigurētu Django lietotni Ubuntu

Chef-solo izmantošana, lai konfigurētu Django lietotni Ubuntu

Ir daudzi veidi, kā automatizēt kastes iestatīšanas un konfigurēšanas procesu. Kādu iemeslu dēļ, ja visa mūsu sistēma šobrīd sastāv no tikai

Kā instalēt Foreman Ubuntu 16.04 LTS

Kā instalēt Foreman Ubuntu 16.04 LTS

Vai izmantojat citu sistēmu? Foreman ir bezmaksas atvērtā koda rīks, kas palīdz konfigurēt un pārvaldīt fiziskos un virtuālos serverus. Forema

Darba sākšana ar SaltStack uz Ubuntu 17.04

Darba sākšana ar SaltStack uz Ubuntu 17.04

SaltStack ir uz python balstīta konfigurācijas pārvaldības programma, kas ir optimizēta konfigurācijas failu, izvietošanas un visa cita unde automatizācijai.

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk