Πιστεύετε πως τα specs του server μου θα αντέξουν ένα docker build system?

Στο ακόλουθο repository:

Αξιοποιώ το travis-ci προκειμένου να κάνω καμιά 10 παράλληλα builds.

Πρακτικά κτίζω:

  • Apache-based
  • alpine-based

Docker images στο οποίο το κάθε ένα είναι για κάθε διαφορετική έκδοση του moodle:

  • 3.5
  • 3.6
  • 3.7
  • 3.8
  • 3.9
  • 3.10

Άρα τρέχω 2*8 = 16 παράλληλα builds που κατεβάζουν και ανεβάζουν στο docker hub. Ακόμα έχω και τον ακόλουθο server:

$ cat /etc/*-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

Με την ακόλουθη μνήμη:

              total        used        free      shared  buff/cache   available
Mem:           3955         504         215          91        3235        3076
Swap:          1901           0        1901

Και τον ακόλουθο δίσκο:

Filesystem      Size  Used Avail Use% Mounted on
udev            2.0G     0  2.0G   0% /dev
tmpfs           396M   41M  356M  11% /run
/dev/vda1        18G   11G  6.0G  65% /
tmpfs           2.0G  324K  2.0G   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
tmpfs           396M     0  396M   0% /run/user/0
tmpfs           396M     0  396M   0% /run/user/1002

Ο οποίος σερβίρει wordpress μέσω docker:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
8372eeb30a28        wordpress:latest    "docker-entrypoint.s…"   14 months ago       Up 6 months         0.0.0.0:8086->80/tcp   wpnew_wordpress_1
247cade28946        mariadb             "docker-entrypoint.s…"   14 months ago       Up 6 months         3306/tcp               wpnew_wordpress-db_1

Σκευτόμουν να μετέρερνα το ci-cd procedure μέσω jenkins (ή άλλου ci-cd provider) στον server αυτόν. Πιστεύετε πως είναι καλή ιδέα ή όχι;

(Εναλλακτικά παίζει και η λύση του vm και στον Η/Υ μου)

Αυτό που φοβάμαι είναι μήπως η cache του docker μου φάει όλον τον σκληρό δίσκο.

Το διαβασα καλα;

/dev/vda1 ;;;

Τρεχεις Docker μεσα σε VM;

Ναι τρέχω docker Μέσα σε vm βασικά να είμαι ποιο ορθός σε vps.

Είναι θέμα χρόνου να σου γεμίσει ο δίσκος, θα πρέπει να βάλεις να καθαρίζει διαρκώς αυτόματα τα οποία artifacts παράγονται.

Υπάρχει κάποιος λόγος που πρέπει να κάνεις build παράλληλα;

Θα σου πρότεινα να κάνεις multistage build και στο τέλος να κάνεις dump το εκτελέσιμο σε ένα from scratch image, αντί για alpine.

Σίγουρα ένα διαφορετικό σύστημα θα βοηθούσε για να κάνεις build. Το github actions δε σε καλύπτει;

Μπορώ μετά από κάθε build να κάνω docker-system prune και docker rmi.

Τα εκτελώ παράλληλα γιατί θέλω να κτίζω γρήγορα όλα αυτά τα tags για το ίδιο image:

https://hub.docker.com/r/ellakcy/moodle/tags?page=1&ordering=-name

Multistage δεν με βολεύει γιατί απλά κατεβάζω έτοιμο κτισμένο με όλα τα dependencies το moodle από το net.

Αλλά δεν ξέρω εάν στο script κάνω 16 loops βολεύει ή θα μου σκάσει timeout. Ήδη με τα παράλληλα που είναι μικρότερα σκάει timeout.