Πώς να εγκαταστήσετε και να ρυθμίσετε το GoCD στο Ubuntu 16.04

Το GoCD είναι ένα σύστημα συνεχούς παράδοσης και αυτοματισμού ανοιχτού κώδικα. Σας επιτρέπει να μοντελοποιείτε πολύπλοκες ροές εργασίας χρησιμοποιώντας την παράλληλη και διαδοχική εκτέλεσή της. Ο χάρτης ροής αξίας σάς επιτρέπει να οπτικοποιείτε εύκολα μια περίπλοκη ροή εργασίας με ευκολία. Το GoCD σάς επιτρέπει να συγκρίνετε εύκολα δύο εκδόσεις και να αναπτύξετε οποιαδήποτε έκδοση της εφαρμογής θέλετε. Το οικοσύστημα GoCD αποτελείται από διακομιστή GoCD και παράγοντα GoCD. Το GoCD είναι υπεύθυνο για τον έλεγχο των πάντων, όπως η εκτέλεση της διεπαφής χρήστη που βασίζεται στο web και η διαχείριση και η παροχή εργασιών στον πράκτορα. Οι πράκτορες Go είναι υπεύθυνοι για την εκτέλεση των εργασιών και των αναπτύξεων.

Προαπαιτούμενα

  • Μια παρουσία διακομιστή Vultr Ubuntu 16.04 με τουλάχιστον 2 GB RAM.
  • Ένας χρήστης sudo .
  • Ένα όνομα τομέα στραμμένο προς τον διακομιστή.

Για αυτό το σεμινάριο, θα χρησιμοποιήσουμε 192.168.1.1ως δημόσια διεύθυνση IP και gocd.example.com ως όνομα τομέα που δείχνει προς την παρουσία του Vultr. Βεβαιωθείτε ότι έχετε αντικαταστήσει όλες τις εμφανίσεις του παραδείγματος ονόματος τομέα και διεύθυνσης IP με την πραγματική.

Ενημερώστε το βασικό σας σύστημα χρησιμοποιώντας τον οδηγό Πώς να ενημερώσετε το Ubuntu 16.04 . Μόλις το σύστημά σας ενημερωθεί, προχωρήστε στην εγκατάσταση Java.

Εγκαταστήστε Java

Το GoCD απαιτεί Java έκδοση 8 και υποστηρίζει τόσο Oracle Java όσο και OpenJDK. Προσθέστε το αποθετήριο Ubuntu για την Oracle Java 8.

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

Εγκαταστήστε την Oracle Java.

sudo apt -y install oracle-java8-installer

Ελέγξτε την έκδοση.

java -version

Θα δείτε την ακόλουθη έξοδο.

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)

Ορίστε την προεπιλεγμένη διαδρομή για Java εγκαθιστώντας το ακόλουθο πακέτο.

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

Μπορείτε να επαληθεύσετε εάν JAVA_HOMEέχει οριστεί εκτελώντας.

echo $JAVA_HOME

Θα δεις.

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

Εάν δεν βλέπετε καθόλου έξοδο, θα πρέπει να αποσυνδεθείτε από το τρέχον κέλυφος και να συνδεθείτε ξανά.

Εγκαταστήστε το GoCD

Εγκαταστήστε το επίσημο αποθετήριο του GoCD στο σύστημα.

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

Εγκαταστήστε τον διακομιστή GoCD στο σύστημά σας.

sudo apt install -y go-server

Εκκινήστε το GoCD και ενεργοποιήστε το να ξεκινά αυτόματα κατά την εκκίνηση.

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

Πριν αποκτήσουμε πρόσβαση στον πίνακα εργαλείων GoCD, ας δημιουργήσουμε έναν νέο κατάλογο για την αποθήκευση των τεχνουργημάτων. Τα τεχνουργήματα μπορούν να αποθηκευτούν στον ίδιο δίσκο στον οποίο είναι εγκατεστημένα το λειτουργικό σύστημα και οι εφαρμογές. Εναλλακτικά, μπορείτε να χρησιμοποιήσετε έναν αποκλειστικό δίσκο ή μονάδα αποθήκευσης μπλοκ για την αποθήκευση των τεχνουργημάτων.

Εάν θέλετε να χρησιμοποιήσετε τον ίδιο δίσκο για την αποθήκευση των τεχνουργημάτων, απλώς δημιουργήστε έναν νέο κατάλογο και παρέχετε την ιδιοκτησία στον χρήστη GoCD.

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

Διαμόρφωση Αποθήκευσης Αποκλεισμού

Το λογισμικό GoCD συνιστά να χρησιμοποιήσετε ένα πρόσθετο διαμέρισμα ή μονάδα δίσκου για την αποθήκευση των τεχνουργημάτων. Σε μια πλατφόρμα συνεχούς ενοποίησης και παράδοσης, τα τεχνουργήματα δημιουργούνται πολύ συχνά. Ο χώρος στο δίσκο μειώνεται με την πάροδο του χρόνου όταν δημιουργούνται συνεχώς νέα τεχνουργήματα. Σε κάποιο στάδιο, το σύστημά σας θα εξαντληθεί από ελεύθερο χώρο στο δίσκο και οι υπηρεσίες που εκτελούνται στο σύστημά σας θα αποτύχουν. Για να ξεπεράσετε αυτό το ζήτημα, μπορείτε να επισυνάψετε μια νέα μονάδα αποθήκευσης μπλοκ Vultr για να αποθηκεύσετε τα τεχνουργήματα. Εάν εξακολουθείτε να θέλετε να χρησιμοποιήσετε την αποθήκευση τεχνουργημάτων στην ίδια μονάδα δίσκου, μεταβείτε στην ενότητα "Διαμόρφωση GoCD".

Αναπτύξτε μια νέα μονάδα αποθήκευσης μπλοκ και συνδέστε την στην παρουσία διακομιστή GoCD. Τώρα δημιουργήστε ένα νέο διαμέρισμα στη συσκευή αποθήκευσης μπλοκ.

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

Δημιουργήστε το σύστημα αρχείων στο νέο δίσκο.

sudo mkfs.ext4 /dev/vdb1

Τοποθετήστε τη μονάδα αποθήκευσης μπλοκ.

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

Τώρα, εκτελέστε dfκαι θα δείτε τη νέα μονάδα αποθήκευσης μπλοκ τοποθετημένη στο /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

Παρέχετε την ιδιοκτησία του καταλόγου στον χρήστη GoCD.

sudo chown -R go:go /mnt/artifacts

Διαμόρφωση του GoCD

Τώρα μπορείτε να αποκτήσετε πρόσβαση στον πίνακα εργαλείων GoCD στο http://192.168.1.1:8153. Για πρόσβαση στον πίνακα εργαλείων GoCD σε ασφαλή σύνδεση, αποκτήστε πρόσβαση https://192.168.1.1:8154. Θα λάβετε ένα σφάλμα που δείχνει ότι τα πιστοποιητικά δεν είναι έγκυρα. Μπορείτε να αγνοήσετε με ασφάλεια το σφάλμα καθώς τα πιστοποιητικά είναι αυτο-υπογεγραμμένα. Για λόγους ασφαλείας, θα πρέπει πάντα να χρησιμοποιείτε τον πίνακα εργαλείων μέσω μιας ασφαλούς σύνδεσης.

Προτού ρυθμίσετε μια νέα διοχέτευση, μεταβείτε στο " Admin >> Server Configuration" από την επάνω γραμμή πλοήγησης.

Εισαγάγετε τη διεύθυνση URL στον μη Site URLασφαλή ιστότοπο στο πεδίο " " και τον ασφαλή ιστότοπο στο πεδίο " Secure Site URL".

Πώς να εγκαταστήσετε και να ρυθμίσετε το GoCD στο Ubuntu 16.04

Στη συνέχεια, δώστε τα στοιχεία του διακομιστή SMTP για αποστολή ειδοποιήσεων μέσω email από το GoCD.

Πώς να εγκαταστήσετε και να ρυθμίσετε το GoCD στο Ubuntu 16.04

Τέλος, δώστε τη διαδρομή προς την τοποθεσία όπου θέλετε να αποθηκεύσετε τα τεχνουργήματα. Εάν έχετε επιλέξει να αποθηκεύσετε τα τεχνουργήματα στον ίδιο δίσκο με το λειτουργικό σύστημα, πληκτρολογήστε /opt/artifacts; εάν έχετε επιλέξει να επισυνάψετε μια μονάδα αποθήκευσης μπλοκ, τότε μπορείτε να εισαγάγετε /mnt/artifacts.

Μπορείτε επίσης να διαμορφώσετε το GoCD ώστε να διαγράφει αυτόματα τα παλιά αντικείμενα. Διαμορφώστε την επόμενη επιλογή ανάλογα με το μέγεθος του δίσκου σας. Ωστόσο, η επιλογή αυτόματης διαγραφής δεν λαμβάνει αντίγραφο ασφαλείας των παλιών σας τεχνουργημάτων. Για να δημιουργήσετε μη αυτόματα αντίγραφο ασφαλείας και στη συνέχεια να διαγράψετε τα παλιά αντικείμενα, απενεργοποιήστε την αυτόματη διαγραφή επιλέγοντας την επιλογή " Never" για την Auto delete old artifactsεπιλογή " ".

Πώς να εγκαταστήσετε και να ρυθμίσετε το GoCD στο Ubuntu 16.04

Θα χρειαστεί να κάνετε επανεκκίνηση του διακομιστή GoCD, ώστε να εφαρμοστούν οι νέες αλλαγές.

sudo systemctl restart go-server

Ρύθμιση ελέγχου ταυτότητας

By default, the GoCD dashboard is not configured to use any kind of authentication, but it supports authentication using a password file and LDAP. In this tutorial, we will set up password-based authentication.

Note: Setting up authentication is an optional step, but it is strongly recommended for public facing servers, such as Vultr.

Install Apache tools so that we can use the htpasswd command to create an encrypted password file.

sudo apt -y install apache2-utils

Create a password file with the htpasswd command using Bcrypt encryption.

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

Provide the password for the user twice. You will see the following output.

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

You can add as many users as you want using the same command above, but remove the -c option. The -c option will replace the existing file, replacing old users with the new user.

sudo htpasswd -B /etc/go/passwd_auth gouser1

Now that we have created the password file, access the GoCD dashboard again. Navigate to "Admin >> Security >> Authorization Configurations" from the top navigation bar. Click on the Add button and provide any ID. Choose "Password File Authentication Plugin for GoCD" for the plugin ID and direct the path to the password file. Now click on the "Check Connection" button to verify that GoCD can use the password file for authentication.

Πώς να εγκαταστήσετε και να ρυθμίσετε το GoCD στο Ubuntu 16.04

Finally, save the authentication method. Reload the dashboard and it will automatically log you out. You will see a login screen now. Log in using the credentials created earlier.

You will need to promote the administrator user manually, otherwise, all the users will have administrator privileges. Navigate to "Admin >> User Summary" from the top navigation bar.

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.

Πώς να εγκαταστήσετε και να ρυθμίσετε το GoCD στο 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

Από προεπιλογή, το GoCD ακούει σε θύρες 8153 και 8154 σε ασφαλείς συνδέσεις. Αν και η θύρα 8154 παρέχει μια ασφαλή σύνδεση με την εφαρμογή, εμφανίζει επίσης σφάλματα προγράμματος περιήγησης καθώς χρησιμοποιεί ένα αυτο-υπογεγραμμένο πιστοποιητικό. Σε αυτήν την ενότητα του σεμιναρίου, θα εγκαταστήσουμε και θα ασφαλίσουμε το Nginx με ένα δωρεάν πιστοποιητικό SSL Let's Encrypt. Ο διακομιστής web Nginx θα λειτουργεί ως αντίστροφος διακομιστής μεσολάβησης για την προώθηση των εισερχόμενων αιτημάτων στο HTTP τελικό σημείο του GoCD .

Εγκαταστήστε το Nginx.

sudo apt -y install nginx

Ξεκινήστε το Nginx και ενεργοποιήστε το να ξεκινά αυτόματα κατά την εκκίνηση.

sudo systemctl start nginx
sudo systemctl enable nginx

Προσθέστε το αποθετήριο Certbot.

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

Εγκαταστήστε το Certbot, το οποίο είναι η εφαρμογή πελάτη για το Let's Encrypt CA.

sudo apt -y install certbot

Σημείωση : Για να αποκτήσετε πιστοποιητικά από το Let's Encrypt CA, ο τομέας για τον οποίο πρόκειται να δημιουργηθούν τα πιστοποιητικά πρέπει να κατευθύνεται προς τον διακομιστή. Εάν όχι, κάντε τις απαραίτητες αλλαγές στις εγγραφές DNS του τομέα και περιμένετε να διαδοθεί το DNS προτού υποβάλετε ξανά το αίτημα πιστοποιητικού. Το Certbot ελέγχει την αρχή τομέα πριν από την παροχή των πιστοποιητικών.

Δημιουργήστε τα πιστοποιητικά SSL.

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

Τα πιστοποιητικά που δημιουργούνται είναι πιθανό να αποθηκευτούν στο /etc/letsencrypt/live/gocd.example.com/. Το πιστοποιητικό SSL θα αποθηκευτεί ως fullchain.pem και το ιδιωτικό κλειδί θα αποθηκευτεί ως privkey.pem.

Ας κρυπτογραφήσουμε τα πιστοποιητικά λήγουν σε 90 ημέρες, επομένως συνιστάται να ρυθμίσετε την αυτόματη ανανέωση των πιστοποιητικών χρησιμοποιώντας εργασίες cron.

Ανοίξτε το αρχείο εργασίας cron.

sudo crontab -e

Προσθέστε την ακόλουθη γραμμή στο τέλος του αρχείου.

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

Η παραπάνω εργασία cron θα εκτελείται καθημερινά στις 5:30 π.μ. Εάν το πιστοποιητικό πρόκειται να λήξει, θα ανανεωθεί αυτόματα.

Δημιουργήστε ένα νέο αρχείο διαμόρφωσης για τη διεπαφή ιστού GoCD.

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

Συμπληρώστε το αρχείο.

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

Ενεργοποιήστε το αρχείο διαμόρφωσης.

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

Επανεκκινήστε τον διακομιστή ιστού Nginx για να εφαρμόσετε την αλλαγή στη διαμόρφωση.

sudo systemctl restart nginx

Τώρα μπορείτε να αποκτήσετε πρόσβαση στον πίνακα εργαλείων GoCD στη διεύθυνση https://gocd.example.com. Συνδεθείτε στον πίνακα ελέγχου σας χρησιμοποιώντας τα διαπιστευτήρια διαχειριστή και μεταβείτε στο " Admin >> Server Configuration" από την επάνω γραμμή πλοήγησης.

Πώς να εγκαταστήσετε και να ρυθμίσετε το GoCD στο Ubuntu 16.04

Ρυθμίστε τα " Site URL" και " Secure Site URL" σε https://gocd.example.com.

Εγκατάσταση GoCD Agent

Στο περιβάλλον συνεχούς ολοκλήρωσης GoCD, οι πράκτορες GoCD είναι οι εργαζόμενοι που είναι υπεύθυνοι για την εκτέλεση όλων των εργασιών. Όταν εντοπίζεται μια αλλαγή στην πηγή, ενεργοποιείται η διοχέτευση και οι εργασίες ανατίθενται σε διαθέσιμους εργαζόμενους για εκτέλεση. Στη συνέχεια, ο πράκτορας εκτελεί την εργασία και αναφέρει την τελική κατάσταση μετά την εκτέλεση.

Για να εκτελέσετε μια διοχέτευση, πρέπει να διαμορφωθεί τουλάχιστον ένας πράκτορας. Προχωρήστε στην εγκατάσταση του παράγοντα GoCD στον διακομιστή GoCD.

Εφόσον έχουμε ήδη εισαγάγει το αποθετήριο GoCD στον διακομιστή, μπορούμε να εγκαταστήσουμε απευθείας το Go Agent.

sudo apt install -y go-agent

Τώρα, ξεκινήστε τον διακομιστή GoCD και ενεργοποιήστε τον να ξεκινά αυτόματα κατά την εκκίνηση.

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

Ο παράγοντας GoCD που εκτελείται στον localhost ενεργοποιείται αυτόματα όταν εντοπιστεί.


Leave a Comment

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα