Si të instaloni dhe konfiguroni GoCD në Ubuntu 16.04

GoCD është një sistem furnizimi dhe automatizimi i vazhdueshëm me burim të hapur. Ju lejon të modeloni flukse pune komplekse duke përdorur ekzekutimin e tij paralel dhe sekuencial. Harta e saj e rrjedhës së vlerave ju lejon të vizualizoni me lehtësi një rrjedhë komplekse pune. GoCD ju lejon të krahasoni me lehtësi dy ndërtime dhe të vendosni çdo version të aplikacionit që dëshironi. Ekosistemi GoCD përbëhet nga serveri GoCD dhe agjenti GoCD. GoCD është përgjegjëse për kontrollin e gjithçkaje, si p.sh. ekzekutimin e ndërfaqes së përdoruesit të bazuar në ueb dhe menaxhimin dhe ofrimin e vendeve të punës për agjentin. Agjentët Go janë përgjegjës për drejtimin e punëve dhe vendosjeve.

Parakushtet

  • Një shembull i serverit Vultr Ubuntu 16.04 me të paktën 2 GB RAM.
  • Një përdorues sudo .
  • Një emër domaini i drejtuar drejt serverit.

Për këtë tutorial, ne do të përdorim 192.168.1.1si adresën IP publike dhe gocd.example.com si emrin e domenit të drejtuar drejt shembullit Vultr. Ju lutemi sigurohuni që të zëvendësoni të gjitha rastet e emrit të domenit shembull dhe adresës IP me atë aktuale.

Përditësoni sistemin tuaj bazë duke përdorur udhëzuesin Si të përditësoni Ubuntu 16.04 . Pasi sistemi juaj të jetë përditësuar, vazhdoni të instaloni Java.

Instaloni Java

GoCD kërkon versionin 8 të Java dhe mbështet Oracle Java dhe OpenJDK. Shtoni depon e Ubuntu për Oracle Java 8.

sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update

Instaloni Oracle Java.

sudo apt -y install oracle-java8-installer

Kontrolloni versionin.

java -version

Do të shihni daljen e mëposhtme.

user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

Vendosni shtegun e paracaktuar për Java duke instaluar paketën e mëposhtme.

sudo apt -y install oracle-java8-set-default

Mund të verifikoni nëse JAVA_HOMEështë vendosur duke ekzekutuar.

echo $JAVA_HOME

Do ta shohësh.

user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle

Nëse nuk shihni fare dalje, do t'ju duhet të dilni nga guaska aktuale dhe të identifikoheni përsëri.

Instaloni GoCD

Instaloni depon zyrtare të GoCD në sistem.

echo "deb https://download.gocd.org /" | sudo tee /etc/apt/sources.list.d/gocd.list
curl https://download.gocd.org/GOCD-GPG-KEY.asc | sudo apt-key add -
sudo apt update

Instaloni serverin GoCD në sistemin tuaj.

sudo apt install -y go-server

Nisni GoCD dhe aktivizoni që të fillojë automatikisht në kohën e nisjes.

sudo systemctl start go-server
sudo systemctl enable go-server

Përpara se të hyjmë në pultin e GoCD, le të krijojmë një drejtori të re për të ruajtur objektet. Artifaktet mund të ruhen në të njëjtin disk në të cilin janë instaluar sistemi operativ dhe aplikacionet. Përndryshe, mund të përdorni një disk të dedikuar ose një bllok ruajtjeje për të ruajtur objektet.

Nëse dëshironi të përdorni të njëjtin disk për të ruajtur objektet, thjesht krijoni një direktori të re dhe jepni pronësinë përdoruesit të GoCD.

sudo mkdir /opt/artifacts
sudo chown -R go:go /opt/artifacts

Konfiguro hapësirën ruajtëse të bllokut

Softueri GoCD rekomandon që të përdorni një ndarje ose njësi shtesë për të ruajtur objektet. Në një platformë integrimi dhe shpërndarjeje të vazhdueshme, artefaktet gjenerohen shumë shpesh. Hapësira e diskut zvogëlohet me kalimin e kohës kur gjenerohen vazhdimisht objekte të reja. Në një fazë, sistemi juaj do të mbarojë hapësirën e lirë të diskut dhe shërbimet që funksionojnë në sistemin tuaj do të dështojnë. Për të kapërcyer këtë problem, mund të bashkëngjitni një disk të ri të ruajtjes së bllokut Vultr për të ruajtur objektet. Nëse ende dëshironi të vazhdoni me ruajtjen e objekteve në të njëjtin disk, kaloni te seksioni "Konfiguro GoCD".

Vendosni një disk të ri të ruajtjes së bllokut dhe bashkëngjitni atë në shembullin e serverit tuaj GoCD. Tani krijoni një ndarje të re në pajisjen e ruajtjes së bllokut.

sudo parted -s /dev/vdb mklabel gpt
sudo parted -s /dev/vdb unit mib mkpart primary 0% 100%

Krijoni sistemin e skedarëve në diskun e ri.

sudo mkfs.ext4 /dev/vdb1

Montoni diskun e ruajtjes së bllokut.

sudo mkdir /mnt/artifacts
sudo cp /etc/fstab /etc/fstab.backup
echo "
/dev/vdb1 /mnt/artifacts ext4 defaults,noatime 0 0" | sudo tee -a /etc/fstab
sudo mount /mnt/artifacts

Tani, ekzekutoni dfdhe do të shihni diskun e ri të ruajtjes së bllokut të montuar në /mnt/artifacts.

[user@vultr ~]$ df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/vda1       20616252 6313892  13237464  33% /

...
/dev/vdb1       10188052   36888   9610596   1% /mnt/artifacts

Jepni pronësinë e drejtorisë përdoruesit të GoCD.

sudo chown -R go:go /mnt/artifacts

Konfiguro GoCD

Tani mund të përdorni pultin e GoCD në http://192.168.1.1:8153. Për të hyrë në pultin e GoCD në një lidhje të sigurt, hyni https://192.168.1.1:8154. Do të merrni një gabim që tregon se certifikatat nuk janë të vlefshme. Ju mund ta injoroni me siguri gabimin pasi certifikatat janë të vetë-nënshkruara. Për qëllime sigurie, duhet të përdorni gjithmonë pultin mbi një lidhje të sigurt.

Përpara se të konfiguroni një tubacion të ri, lundroni te " Admin >> Server Configuration" nga shiriti i sipërm i navigimit.

Fusni URL-në e sajtit tuaj të pasigurt në fushën " Site URL" dhe sajtin e siguruar në fushën " Secure Site URL".

Si të instaloni dhe konfiguroni GoCD në Ubuntu 16.04

Më pas, jepni detajet e serverit tuaj SMTP për të dërguar njoftime me email nga GoCD.

Si të instaloni dhe konfiguroni GoCD në Ubuntu 16.04

Së fundi, jepni shtegun për në vendndodhjen ku dëshironi të ruani artefaktet. Nëse keni zgjedhur të ruani objektet në të njëjtin disk me sistemin operativ, futni /opt/artifacts; nëse keni zgjedhur të bashkëngjitni një diskun e ruajtjes së bllokut, atëherë mund të futni /mnt/artifacts.

Ju gjithashtu mund të konfiguroni GoCD për të fshirë automatikisht artefaktet e vjetra. Konfiguro opsionin tjetër sipas madhësisë së diskut. Megjithatë, opsioni i fshirjes automatike nuk merr një kopje rezervë të objekteve tuaja të vjetra. Për të marrë manualisht një kopje rezervë dhe më pas për të fshirë objektet e vjetra, çaktivizoni fshirjen automatike duke zgjedhur Neveropsionin " " për opsionin " Auto delete old artifacts".

Si të instaloni dhe konfiguroni GoCD në Ubuntu 16.04

Ju do të duhet të rinisni serverin GoCD në mënyrë që të zbatohen ndryshimet e reja.

sudo systemctl restart go-server

Konfiguro Autentifikimin

Si parazgjedhje, paneli i kontrollit GoCD nuk është konfiguruar për të përdorur asnjë lloj vërtetimi, por ai mbështet vërtetimin duke përdorur një skedar fjalëkalimi dhe LDAP. Në këtë tutorial, ne do të konfigurojmë vërtetimin e bazuar në fjalëkalim.

Shënim : Vendosja e vërtetimit është një hap opsional, por rekomandohet fuqimisht për serverët me pamje publike, si Vultr.

Instaloni veglat Apache në mënyrë që të mund të përdorim htpasswd komandën për të krijuar një skedar fjalëkalimi të koduar.

sudo apt -y install apache2-utils

Krijo një skedar fjalëkalimi me htpasswd komandën duke përdorur enkriptimin Bcrypt.

sudo htpasswd -B -c /etc/go/passwd_auth goadmin

Jepni fjalëkalimin për përdoruesin dy herë. Do të shihni daljen e mëposhtme.

[user@vultr ~]$ sudo htpasswd -B -c /etc/go/passwd_auth goadmin
New password:
Re-type new password:
Adding password for user goadmin

Mund të shtoni sa më shumë përdorues që dëshironi duke përdorur të njëjtën komandë të mësipërme, por hiqni -c opsionin. -c Opsion do të zëvendësojë file ekzistues, duke zëvendësuar përdoruesit vjetra me përdorues të ri.

sudo htpasswd -B /etc/go/passwd_auth gouser1

Tani që kemi krijuar skedarin e fjalëkalimit, hyni përsëri në pultin e GoCD. Navigoni te " Admin >> Security >> Authorization Configurations" nga shiriti i sipërm i navigimit. Klikoni në Add butonin dhe jepni çdo ID. Zgjidhni " Password File Authentication Plugin for GoCD" për ID-në e shtojcës dhe drejtojeni shtegun te skedari i fjalëkalimit. Tani klikoni në Check Connectionbutonin " " për të verifikuar që GoCD mund të përdorë skedarin e fjalëkalimit për vërtetim.

Si të instaloni dhe konfiguroni GoCD në Ubuntu 16.04

Më në fund, ruani metodën e vërtetimit. Ringarko panelin e kontrollit dhe ai do t'ju nxjerrë automatikisht. Tani do të shihni një ekran identifikimi. Identifikohu duke përdorur kredencialet e krijuara më parë.

Do t'ju duhet të promovoni manualisht përdoruesin e administratorit, përndryshe, të gjithë përdoruesit do të kenë privilegje administratori. Navigoni te " Admin >> User Summary" nga shiriti i sipërm i navigimit.

Now select the admin user you've created and click on the "Roles" drop-down. Promote the user to the only administrator by selecting the "Go System Administrator" checkbox.

Si të instaloni dhe konfiguroni GoCD në Ubuntu 16.04

To add the users in GoCD created in the password file, click on the "ADD" button and search for the user to add them. Users are also automatically added to the GoCD dashboard on their first login. Obviously, for users to log in, they must be added to the password file we have created earlier.

Securing GoCD with Let's Encrypt SSL

By default, GoCD listens to ports 8153 and 8154 on secure connections. Though port 8154 provides a secure connection to the application, it also displays browser errors as it uses a self-signed certificate. In this section of the tutorial, we will install and secure Nginx with a Let's Encrypt free SSL certificate. The Nginx web server will work as a reverse proxy to forward the incoming requests to GoCD's HTTP endpoint.

Install Nginx.

sudo apt -y install nginx

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

sudo systemctl start nginx
sudo systemctl enable nginx

Add the Certbot repository.

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

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

sudo apt -y install certbot

Shënim : Për të marrë certifikata nga Let's Encrypt CA, domeni për të cilin do të gjenerohen certifikatat duhet të drejtohet drejt serverit. Nëse jo, bëni ndryshimet e nevojshme në të dhënat DNS të domenit dhe prisni që DNS të përhapet përpara se të bëni përsëri kërkesën për certifikatë. Certbot kontrollon autoritetin e domenit përpara se të japë certifikatat.

Gjeneroni certifikatat SSL.

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

Certifikatat e krijuara ka të ngjarë të ruhen në /etc/letsencrypt/live/gocd.example.com/. Certifikata SSL do të ruhet si fullchain.pem dhe çelësi privat do të ruhet si privkey.pem.

Le të Enkriptojmë certifikatat skadojnë për 90 ditë, prandaj rekomandohet të konfiguroni rinovimin automatik të certifikatave duke përdorur cron jobs.

Hapni skedarin e punës cron.

sudo crontab -e

Shtoni rreshtin e mëposhtëm në fund të skedarit.

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

Puna e mësipërme e cron do të funksionojë çdo ditë në orën 5:30 të mëngjesit. Nëse certifikata duhet të skadojë, ajo do të rinovohet automatikisht.

Krijo një skedar të ri konfigurimi për ndërfaqen e internetit GoCD.

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

Plotësoni skedarin.

upstream gocd {
server 127.0.0.1:8153;
}

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

server {
    listen 443;
    server_name gocd.example.com;

    ssl_certificate           /etc/letsencrypt/live/gocd.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/gocd.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/gocd.access.log;

location / {
        proxy_pass http://gocd;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_redirect off;
    }
location /go {
    proxy_pass http://gocd/go;
    proxy_http_version 1.1;
    proxy_set_header Upgrade websocket;
    proxy_set_header Connection upgrade;
    proxy_read_timeout 86400;
    }
  }

Aktivizoni skedarin e konfigurimit.

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

Rinisni serverin në internet Nginx për të zbatuar ndryshimin në konfigurim.

sudo systemctl restart nginx

Tani mund të përdorni pultin e GoCD në https://gocd.example.com. Hyni në pultin tuaj duke përdorur kredencialet e administratorit dhe lundroni te " Admin >> Server Configuration" nga shiriti i sipërm i navigimit.

Si të instaloni dhe konfiguroni GoCD në Ubuntu 16.04

Vendosni " Site URL" dhe " Secure Site URL" në https://gocd.example.com.

Instalimi i agjentit GoCD

Në mjedisin e integrimit të vazhdueshëm të GoCD, agjentët e GoCD janë punonjësit që janë përgjegjës për ekzekutimin e të gjitha detyrave. Kur zbulohet një ndryshim në burim, gazsjellësi aktivizohet dhe punët u caktohen punëtorëve në dispozicion për ekzekutim. Agjenti më pas ekzekuton detyrën dhe raporton statusin përfundimtar pas ekzekutimit.

Për të drejtuar një tubacion, duhet të konfigurohet të paktën një agjent. Vazhdoni të instaloni agjentin GoCD në serverin GoCD.

Meqenëse ne kemi importuar tashmë depon e GoCD në server, ne mund të instalojmë drejtpërdrejt Go Agent.

sudo apt install -y go-agent

Tani, nisni serverin GoCD dhe aktivizoni që të fillojë automatikisht në kohën e nisjes.

sudo systemctl start go-agent
sudo systemctl enable go-agent

Agjenti GoCD që funksionon në localhost aktivizohet automatikisht kur zbulohet.


Leave a Comment

Ngritja e makinave: Aplikimet në botën reale të AI

Ngritja e makinave: Aplikimet në botën reale të AI

Inteligjenca Artificiale nuk është në të ardhmen, është këtu në të tashmen Në këtë blog Lexoni se si aplikacionet e inteligjencës artificiale kanë ndikuar në sektorë të ndryshëm.

Sulmet DDOS: Një përmbledhje e shkurtër

Sulmet DDOS: Një përmbledhje e shkurtër

A jeni edhe ju viktimë e Sulmeve DDOS dhe jeni konfuz në lidhje me metodat e parandalimit? Lexoni këtë artikull për të zgjidhur pyetjet tuaja.

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

Ju mund të keni dëgjuar se hakerët fitojnë shumë para, por a keni menduar ndonjëherë se si i fitojnë ato para? Le te diskutojme.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Dëshironi të shihni shpikjet revolucionare nga Google dhe se si këto shpikje ndryshuan jetën e çdo njeriu sot? Më pas lexoni në blog për të parë shpikjet nga Google.

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

Koncepti i makinave vetë-drejtuese për të dalë në rrugë me ndihmën e inteligjencës artificiale është një ëndërr që e kemi prej kohësh. Por, pavarësisht nga disa premtime, ato nuk shihen askund. Lexoni këtë blog për të mësuar më shumë…

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Ndërsa Shkenca evoluon me një ritëm të shpejtë, duke marrë përsipër shumë nga përpjekjet tona, rriten edhe rreziqet për t'iu nënshtruar një Singulariteti të pashpjegueshëm. Lexoni, çfarë mund të thotë singulariteti për ne.

Evolucioni i ruajtjes së të dhënave - Infografik

Evolucioni i ruajtjes së të dhënave - Infografik

Metodat e ruajtjes së të dhënave kanë evoluar mund të jenë që nga lindja e të dhënave. Ky blog mbulon evolucionin e ruajtjes së të dhënave në bazë të një infografike.

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Lexoni blogun për të njohur shtresat e ndryshme në arkitekturën e të dhënave të mëdha dhe funksionalitetet e tyre në mënyrën më të thjeshtë.

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

Në këtë botë të drejtuar nga dixhitali, pajisjet inteligjente të shtëpisë janë bërë një pjesë thelbësore e jetës. Këtu janë disa përfitime të mahnitshme të pajisjeve shtëpiake inteligjente se si ato e bëjnë jetën tonë të vlefshme dhe më të thjeshtë.

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Së fundmi Apple lëshoi ​​macOS Catalina 10.15.4 një përditësim shtesë për të rregulluar problemet, por duket se përditësimi po shkakton më shumë probleme që çojnë në bricking të makinerive mac. Lexoni këtë artikull për të mësuar më shumë