EQVPS

Πώς να εγκαταστήσετε το Docker σε ένα VPS

Εγκαταστήστε το Docker Engine και το πρόσθετο Compose σε Ubuntu με τον σωστό τρόπο — από το επίσημο repository του Docker, όχι από το ξεπερασμένο πακέτο της διανομής — και μετά τρέξτε ένα δοκιμαστικό container και ρυθμίστε το να ξεκινά αυτόματα. Λίγες εντολές για έναν λειτουργικό container host.

Το Docker συσκευάζει μια εφαρμογή και όλα όσα χρειάζεται σε ένα container που τρέχει το ίδιο παντού — ο πιο καθαρός τρόπος για self-hosting υπηρεσιών σε ένα VPS. Το μόνο πρόβλημα σε Ubuntu και Debian είναι ότι η έκδοση στο δικό της repository της διανομής είναι συχνά παλιά και κυκλοφορεί χωρίς το σύγχρονο πρόσθετο Compose. Εγκαταστήστε αντ' αυτού από το επίσημο repository του Docker. Ακολουθεί όλη η διαδικασία.

1. Ρυθμίστε το επίσημο repository του Docker (Ubuntu)

sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
  https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

2. Εγκαταστήστε το Docker Engine και το Compose

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

3. Επιβεβαιώστε ότι τρέχει και είναι ενεργοποιημένο στην εκκίνηση

sudo systemctl enable --now docker
sudo docker run --rm hello-world

Το container hello-world κατεβαίνει, εκτυπώνει ένα μήνυμα επιτυχίας και τερματίζει — απόδειξη ότι η μηχανή λειτουργεί.

4. (Προαιρετικό) Τρέξτε το Docker χωρίς sudo

sudo usermod -aG docker $USER
# αποσυνδεθείτε και συνδεθείτε ξανά για να ενεργοποιηθεί η αλλαγή ομάδας

Κάντε το μόνο για έναν χρήστη που εμπιστεύεστε — η πρόσβαση στην ομάδα docker ισοδυναμεί ουσιαστικά με root στον host.

Ένα γρήγορο πραγματικό container

docker run -d --restart unless-stopped -p 8080:80 --name web nginx
# επισκεφθείτε το http://YOUR.SERVER.IP:8080

Το --restart unless-stopped είναι αυτό που κάνει το container να επανέρχεται μετά από επανεκκίνηση.

Ειλικρινείς προειδοποιήσεις

Επόμενα βήματα

Με το Docker εγκατεστημένο μπορείτε να κάνετε self-host σχεδόν οτιδήποτε. Δείτε self-hosting πολλαπλών υπηρεσιών πίσω από ένα IP, ή συγκεκριμένες κατασκευές Docker όπως ένας server RustDesk remote-desktop και παρακολούθηση Uptime Kuma. Για να βάλετε ένα domain και HTTPS μπροστά, δείτε πώς να ρυθμίσετε ένα nginx reverse proxy.

Συχνές ερωτήσεις

Να χρησιμοποιήσω 'apt install docker.io' ή το repository του Docker;

Για μια τρέχουσα έκδοση, χρησιμοποιήστε το επίσημο repository του Docker (τα παρακάτω βήματα). Το πακέτο docker.io της διανομής είναι βολικό αλλά συχνά καθυστερεί, και το σύγχρονο πρόσθετο 'docker compose' έρχεται με τα επίσημα πακέτα. Αν χρειάζεστε μόνο ένα γρήγορο δοκιμαστικό μηχάνημα, το docker.io επίσης δουλεύει.

Ποια είναι η διαφορά μεταξύ 'docker compose' και 'docker-compose';

Το παλιό 'docker-compose' ήταν ένα ξεχωριστό εργαλείο Python (με ενωτικό). Το τρέχον είναι 'docker compose' (με κενό) — ένα πρόσθετο ενσωματωμένο στο Docker. Χρησιμοποιήστε το πρόσθετο· το αυτόνομο εργαλείο είναι legacy. Εγκαταστήστε το docker-compose-plugin όπως φαίνεται και το αποκτάτε.

Πώς τρέχω το Docker χωρίς να πληκτρολογώ sudo κάθε φορά;

Προσθέστε τον χρήστη σας στην ομάδα docker: 'sudo usermod -aG docker $USER', μετά αποσυνδεθείτε και συνδεθείτε ξανά. Σημειώστε ότι αυτό ουσιαστικά παραχωρεί πρόσβαση επιπέδου root μέσω containers, οπότε κάντε το μόνο για έναν έμπιστο χρήστη στον δικό σας server.

Πόση RAM χρειάζεται το Docker;

Το ίδιο το Docker είναι ελαφρύ· αυτό που έχει σημασία είναι τα containers που τρέχετε. Μια μικρή εφαρμογή ή δύο χωράνε άνετα σε ένα μηχάνημα του 1 GB, ενώ πιο βαριά stacks (βάσεις δεδομένων, πολλαπλές υπηρεσίες) θέλουν περισσότερο περιθώριο. Προσαρμόστε το μέγεθος του VPS στον φόρτο εργασίας, όχι στο Docker.

Θα επιβιώσουν τα containers μου μετά από επανεκκίνηση;

Μόνο αν τους το πείτε. Η υπηρεσία του Docker ενεργοποιείται στην εκκίνηση με τα παρακάτω βήματα, και τα containers που ξεκίνησαν με '--restart unless-stopped' (ή αυτή την πολιτική στο Compose) επανέρχονται αυτόματα. Χωρίς πολιτική επανεκκίνησης, ένα container παραμένει σβηστό μετά από επανεκκίνηση.

Σχόλια

Δεν υπάρχουν ακόμη σχόλια. Γίνετε ο πρώτος.

Αφήστε ένα σχόλιο

Τα σχόλια ελέγχονται πριν εμφανιστούν.