
# Ξεκινώντας

## Απαιτήσεις

- PHP 8.2+
- WordPress 6.4+
- MySQL ή MariaDB μέσω της κανονικής σύνδεσης βάσης δεδομένων WordPress
- ένας εγγράψιμος κατάλογος `wp-config.php` κατά την ενεργοποίηση του πρόσθετου

## Εγκατάσταση

Εγκαταστήστε το Rudel με το Composer και ενεργοποιήστε το όπως ένα κανονικό πρόσθετο WordPress.

```bash
composer require rudel/rudel
wp plugin activate rudel
```

Το Composer εγκαθιστά το Rudel στο `vendor/rudel/rudel`, εκτός αν το έργο σας αντιστοιχίζει τα πρόσθετα WordPress στο `wp-content/plugins` (για παράδειγμα με το `composer/installers`). Το πρόσθετο πρέπει να βρίσκεται στον κατάλογο πρόσθετων για να το εντοπίσει το `wp plugin activate rudel`.

## Τι κάνει η ενεργοποίηση

Η ενεργοποίηση δημιουργεί τους πίνακες του Rudel, προγραμματίζει το ωριαίο συμβάν εκκαθάρισης και προσθέτει μία γραμμή εκκίνησης στο `wp-config.php`, ακριβώς πριν από τη γραμμή που φορτώνει το `wp-settings.php`. Αυτή η γραμμή επιτρέπει στο Rudel να επιλέξει sandbox πριν ολοκληρώσει τη φόρτωση το WordPress. Το Rudel γράφει πρώτα ένα αντίγραφο ασφαλείας με όνομα `wp-config.php.rudel-backup-{timestamp}`.

Δεν υπάρχει ξεχωριστή εντολή εγκατάστασης. Αν το `wp-config.php` δεν είναι εγγράψιμο, η ενεργοποίηση αποτυγχάνει. Η απενεργοποίηση αφαιρεί τη γραμμή και το προγραμματισμένο συμβάν.

Ελέγξτε την κατάσταση χρόνου εκτέλεσης:

```bash
wp rudel status
```

Το `Bootstrap installed` θα πρέπει να εμφανίζει `yes`.

## Δημιουργία sandbox

```bash
wp rudel create --name=alpha --theme=twentytwentyfour
```

Το Rudel εμφανίζει το παραγόμενο ID του sandbox, για παράδειγμα `alpha-3be7`. Κλωνοποιεί τους πίνακες WordPress του κεντρικού περιβάλλοντος σε πρόθεμα πινάκων αποκλειστικό για το sandbox, αντιγράφει το θέμα στον κατάλογο του sandbox και αποθηκεύει την εγγραφή στη βάση δεδομένων WordPress του κεντρικού περιβάλλοντος. Τα παρακάτω παραδείγματα χρησιμοποιούν το `alpha-3be7`· χρησιμοποιήστε το ID που εμφάνισε η εντολή σας.

## Χρήση του WP-CLI μέσα σε sandbox

```bash
RUDEL_ENVIRONMENT=alpha-3be7 wp option get blogname
```

Χωρίς το `RUDEL_ENVIRONMENT`, το WP-CLI επικοινωνεί με το κεντρικό περιβάλλον.

## Δρομολόγηση του HTTP σε sandbox

```bash
curl -H 'X-Rudel-Environment: alpha-3be7' http://localhost:8000/
```

Για μια συνεδρία προγράμματος περιήγησης, ορίστε ένα cookie `rudel_environment` με το ID του sandbox. Το Rudel διαβάζει το cookie, αλλά δεν το ορίζει ούτε το διαγράφει ποτέ. Διαγράψτε το cookie για να επιστρέψετε στο κεντρικό περιβάλλον.

Το sandbox εκτελείται στο κεντρικό περιβάλλον URL. Χωρίς την κεφαλίδα ή το cookie, το ίδιο URL εξυπηρετεί το κεντρικό περιβάλλον.

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

- [Δημιουργία περιβαλλόντων](https://rudel.inline0.dev/el/docs/environments/creating)
- [Διαχείριση περιβαλλόντων](https://rudel.inline0.dev/el/docs/environments/managing)
- [Απομόνωση](https://rudel.inline0.dev/el/docs/environments/isolation)
- [CLI](https://rudel.inline0.dev/el/docs/cli)
