Προς το περιεχόμενο

Μεταφορά Wordpress από panel (myvestacp) σε docker container (portainer ee)


comfuzio
Μετάβαση στην απάντηση Απαντήθηκε από comfuzio,

Προτεινόμενες αναρτήσεις

Καλημέρα και χρόνια πολλά!
Έχω αρχίσει σιγά σιγά να αλλάζω λίγο την υποδομή των server μου και από το κλασικό του να τρέχω ένα panel (myvestacp στην περίπτωση μου) θέλω να τα μεταφέρω όλα σε docker container.
Έχει γίνει ένα νέο VM με ubuntu 22.10, μπήκε docker και portainer ee (δίνουν 5 άδειες για το business τσαμπέ οπότε why not ee?) και μπήκε και NPM.
Για νέες σελίδες είναι όλα μια χαρά, το traffic πάει από το pfsense router στο npm και το npm τα στέλνει στο container που πρέπει.
Το πρόβλημα που έχω είναι για ήδη υπάρχουσες σελίδες με περιεχόμενο ετών όπως πχ η main σελίδα μου e-arena.gr δεν έχω καταφέρει να μεταφέρω το περιεχόμενο σωστά, δοκίμασα με plugins του τύπου filemanager όπου παίρνει backup τα πάντα, κάνω clean install ένα wordpress και βάζω πάλι το filemanager για να κάνω upload το backup που πήρα πριν, τρέχω το script και λέει ότι έγινε επιτυχώς αλλά φυσικά η σελίδα είναι νεκρή!
Παίζω με 2 static IP και 2 vm οπότε δεν μένει για ώρα κάτω η σελίδα καθώς γυρίζω IP στην CloudFlare, αλλά έτσι έχω κολλήσει σε ένα αδιέξοδο όπου θα μείνω με 2 VM για webhosting, 1 για τα νέα και 1 για τα παλιά.

Θα δώσω λίγο το docker config που τρέχω μήπως και το τρέχω λάθος

services:
  db:
    image: mariadb:10.10.2-jammy
    command: '--default-authentication-plugin=mysql_native_password'
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=enaotinanaipassword
      - MYSQL_DATABASE=mydbkoukouroukou
      - MYSQL_USER=myuser
      - MYSQL_PASSWORD=password1
    expose:
      - 3306
      - 33060
  wordpress:
    image: wordpress:latest
    volumes:
      - wp_data:/var/www/html

    restart: always
    environment:
      - WORDPRESS_DB_HOST=db
      - WORDPRESS_DB_USER=myuser
      - WORDPRESS_DB_PASSWORD=password1
      - WORDPRESS_DB_NAME=mydbkoukouroukou
volumes:
  db_data:
  wp_data:

Γενικά θέλω το νεότερο Image για MariaDB.
Υποψία μου είναι ότι το wordpress:latest θέλει αλλαγή σε wordpress:6.1.1-php8.1-fpm καθώς στο myvestacp panel τρέχει apache2 front server και nginx σαν proxy και εκεί έτρεχα κανονικά php 8.1. Απλά αν αλλάξω την γραμμή με το "wordpress:6.1.1-php8.1-fpm" το container δεν έρχεται online. 
Έχει γενικά κανείς εμπειρία για το πως μπορώ να κάνω την μεταφορά;

 

Ευχαριστώ!

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Moderators

Disclaimer ότι δεν έχω ιδέα από WP ή panels, μερικά σημεία που σκέφτηκα:

  • Αυτό που κάνεις είναι να εγκαταστήσεις το plugin σου στο dockerized WP και να το τρέξεις από κει; Δεν τρέχεις δηλαδή το plugin στο άλλο WP που βρίσκεται στο VM.
  • Ο container του WP μπορεί να επικοινωνήσει με τον container της βάσης;
  • Αφού τρέξεις το import από το plugin σου, οι πληροφορίες υπάρχουν στη βάση;
  • Μήπως υπάρχει κάποιο θέμα δικαιωμάτων και δε μπορείς να γράψεις στη βάση;
  • Μήπως υπάρχουν directories που γράφει το WP τα οποία δεν έχεις συμπεριλάβει στα volumes;

Καλό θα είναι γενικά να μη βάζεις latest version για τα images σου αλλά συγκεκριμένη έκδοση, για να έχεις εσύ τον έλεγχο πότε και αν θα κάνει update.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Στις 29/12/2022 στις 11:23 ΠΜ, Kercyn είπε

Disclaimer ότι δεν έχω ιδέα από WP ή panels, μερικά σημεία που σκέφτηκα:

  • Αυτό που κάνεις είναι να εγκαταστήσεις το plugin σου στο dockerized WP και να το τρέξεις από κει; Δεν τρέχεις δηλαδή το plugin στο άλλο WP που βρίσκεται στο VM.
  • Ο container του WP μπορεί να επικοινωνήσει με τον container της βάσης;
  • Αφού τρέξεις το import από το plugin σου, οι πληροφορίες υπάρχουν στη βάση;
  • Μήπως υπάρχει κάποιο θέμα δικαιωμάτων και δε μπορείς να γράψεις στη βάση;
  • Μήπως υπάρχουν directories που γράφει το WP τα οποία δεν έχεις συμπεριλάβει στα volumes;

Καλό θα είναι γενικά να μη βάζεις latest version για τα images σου αλλά συγκεκριμένη έκδοση, για να έχεις εσύ τον έλεγχο πότε και αν θα κάνει update.

Χρόνια πολλά κι'όλας και ευχαριστώ για την απάντηση!

  • Δεν σε καταλαβαίνω τι εννοείς με το plugin, γιατί στον panel server εκεί που τραβάω το backup το έχει μέσα ήδη το plugin και στο νέο server αναγκαστικά το βάζω πάλι για να μπορέσω να κάνω upload το backup. Αλλιώς δεν μπορώ να ανεβάσω τίποτα :(
  • Ναι ναι μια χαρά μιλάνε, όταν κάνεις stack όπως το πάνω που έβαλα, φτιάχνει 2 containers, 1 wordpress και 1 mariadb τα οποία μιλάνε μεταξύ τους και δεν μπορεί να τα δει τίποτα άλλο (τουλάχιστον από το web).
  • Το import που κάνει το filemanager plugin είναι ένα compressed αρχείο και ένα installer.php, τρέχεις το domain.com/installed.php και έχει ένα wizard/guide όπου βάζεις τα νέα στοιχεία του stack γιατί πχ η db και ο db user στο panel είναι paneluser_dbame & paneluser_dbusername τα οποία αν δεν τα βάλεις ίδια στο config που έδωσα επάνω αλλά βάλεις άλλα νέα (όπως και έκανα) πρέπει να τα κάνεις match στο guide. Αυτό το στάδιο περνάει οκ μια χαρά, βασικά το όλο guide κάνει complete με επιτυχία.
  • Το WP θα γράψει και σε άλλα dirs ναι αλλά μέσα στο path που δίνω πιο πάνω αλλά αυτά θα τα φτιάξει μόνο του. Το ίδιο κάνει και σε νέο install για νέα σελίδα πχ και εκεί είναι οκ!

Το τελευταίο που λες στα 30 χρόνια που ασχολούμαι με pc έχω καταλάβει ότι δεν υπάρχει τελικό/σταθερό λογισμικό, όλα beta είναι μέχρι να βγει το επόμενο. Οπότε τρέχω πάντα το πιο νέο λογισμικό, βέβαια εδώ σε live περιβάλλον τρέχω latest stable, δλδ η mariadb που έχω βάλει επάνω είναι η πιο πρόσφατη σταθερή, υπάρχουν RC πιο πρόσφατες αλλά με αυτές "παίζω" σε test lab σενάρια και όχι κάτι που θα μπει κόσμος

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • 2 εβδομάδες αργότερα...
  • 2 εβδομάδες αργότερα...

όχι ακόμα προσπαθώ να βρω λύση.
είπα να κάνω ένα gig στο fiverr σχετικά αλλά ψάχνω να βρω κάτι που θα μπορώ να το κάνω μετά εγώ σε άλλα domains και χωρίς να δώσω πρόσβαση σε live περιβάλλον.
προς το παρόν όλοι όσοι έστειλαν προσφορές, φθηνά μεν, ζητάνε όμως full πρόσβαση στα domains και αυτό δεν μπορώ να το κάνω, γιατί δεν ξέρω τι θα κατεβάσουν από εμένα και τι θα το κάνουν μετά.
Λέω να κάνω ένα τεστ domain και έτσι να δώσω τα info και να μη με νοιάζει αν θα κάνουν leak και τι

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • 2 εβδομάδες αργότερα...
  • Λύση

Λοιπόν μάλλον βρέθηκε η λύση με 2 plugins, το updraft και το filemanager.
Με το updraft κάνουμε backup τοπικό (μέσα στον server με λίγα λόγια), κατεβάζουμε μετά 1 προς 1 τα αρχεία που μας δίνει. 5 αν δεν κάνω λάθος.
Πάμε στο νέο server, κάνουμε ένα clean install, περνάμε το filemanager και πάμε στο "wp-content/updraft" και ανεβάζουμε τα 5 αυτά αρχεία.
Περνάμε και το Updaft plugin και πάμε κάτω κάτω που λέει να κάνει scan local αν δεν δει μόνο του το αρχείο κάτω, πατάμε restore, επιλέγουμε όλες τις επιλογές που βγάζει και το αφήνουμε να τρέξει το script, μπορεί να πάρει πολύ ώρα ανάλογα τον όγκο των δεδομένων.

Πατάμε μετάβαση στο dashboard, λογικά θα μας έχει πετάξει έξω για να κάνουμε πάλι login. Κάνουμε login, αυτό ήταν!

 

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

Αρχικά συγχαρητήρια που μπήκες στη διαδικασία να ενημερώσεις σχετικά με τον τρόπο που το έλυσες, ίσως φάνει χρήσιμο και σε άλλους.
Δυστυχώς δεν γνωρίζω πολλά για το οικοσύστημα του WP οπότε δεν μπορούσα να σε βοηθήσω κάπως.
Τελικά έπεσε brainstorming και δοκιμές επι δοκιμών ή από fiverr ;

Επεξ/σία από WoodSell3r
  • Like 2
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δοκιμές σε test domains, η πλάκα είναι ότι άφησα ένα στην μέση και έκανα άλλα πράγματα, μετά ξεχάστηκα και όταν πήγα να μπω κάποιος το είχε χακάρει 😂 καλά hacking του πώλου, δεν είχα κάνει το initial setup και απλά έβαλε το wp να παίζει σε δική του db και μου έβαλε hacked by τάδε (δεν θα τον κάνω και advert).
Τώρα που έγινε επιτυχώς η μεταφορά, θα το αφήσω για μερικές μέρες να υπάρχει και το παλιό σαν backup/high availability.
Επόμενο τεστ είναι wp container στο proxmox, αυτό μιας που θα μιλάει απευθείας στο μέταλλο (cpu) δεν θα έχει overhead και πρέπει να παίζει ακόμα πιο γρήγορα.
Και τα backups του proxmox είναι αρκετά πιο εύκολα ακόμα και για μεταφορά σε άλλο server

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ρώτησες και για το fiverr, θα το έκανα από εκεί αλλά όλες οι προσφορές που μου ήρθαν ήταν από Πακιστάν, Μπαγκλαντές ή Ινδία.
Και έχω θέμα πρώτα με το timezone, μεγάλη διαφορά και δύσκολο να τα πεις σε realtime, και δεύτερο, δεν έχουν GDPR ή κάποια δέσμευση για το τι θα κάνουν τα δεδομένα μου(ή των πελατών μου).
Από τις 30+ προσφορές που μου ήρθαν, όλες κάτω των 10€, μόνο 2 ξεχώρισαν κάπως και ότι διάβασαν τι ζητούσα, οι άλλες ήταν ότι απλά είδαν νέα αγγελία και κάνανε ντου. Στους 2 αυτούς τους είπα, θα σας κάνω ένα VM είτε windows είτε linux με gui, θα μπείτε με κάποιο remote desktop και θα γίνει η δουλειά από αυτό. Τα δεδομένα δεν θα φύγουν από αυτό το VM. Και άρχισαν τα μα μου σου του και να τους δώσω ftp και shell και δεν ξέρω και γω τι άλλο!
Τελικά όπως έγραψα πιο πάνω, η λύση ήταν πολύ απλή, δωρεάν και γρήγορη!

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

με παραδοσιακες μεθοδους δεν σου λειτουργουσε;

για τα αρχεια

rsync για την μεταφορα απο τον εναν σερβερ στον αλλον και μετα move μεσα στο container

για την βαση

sql dump την βαση και Import με εντολες ή αλλιως export και import με το phpmyadmin εγκατεστημενο και στις 2 πλευρες

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

7 ώρες πριν, xrhstosiak είπε

με παραδοσιακες μεθοδους δεν σου λειτουργουσε;

για τα αρχεια

rsync για την μεταφορα απο τον εναν σερβερ στον αλλον και μετα move μεσα στο container

για την βαση

sql dump την βαση και Import με εντολες ή αλλιως export και import με το phpmyadmin εγκατεστημενο και στις 2 πλευρες

Όχι δεν έπαιξε με άλλους τρόπους δυστυχώς αλλά παίζει με τον τρόπο που έγραψα πιο πάνω. Το δοκίμασα σήμερα στα τελευταία 2 domains που ήθελα οπότε από σήμερα είμαι 100% dockerized και σε σελίδες και σε mail server με το mailcow.
Μένει να βρω μόνο πως να σετάρω και redis

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...