# Πώς κάνω deploy το project Laravel μου;

https://www.seturack.com/el/gnosiaki-vasi/arthro/how-do-i-deploy-my-laravel-project

1. Στο πάνελ ανοίξτε το **Οι servers μου** και πατήστε στον server σας.
2. Στην καρτέλα **Επισκόπηση**, περιμένετε να γράψει η γραμμή **Εφαρμογή** «Το Laravel είναι έτοιμο». Η σελίδα ανανεώνεται μόνη της.
3. Ανοίξτε τον σύνδεσμο της γραμμής **Διεύθυνση ιστοτόπου**. Βλέπετε την αρχική σελίδα του Laravel.

## Μεταφορά του δικού σας κώδικα

[Συνδεθείτε μέσω SSH](https://www.seturack.com/el/gnosiaki-vasi/arthro/how-to-connect-with-ssh) και μεταβείτε στον χρήστη του project:

`su - app`

`cd /var/www/laravel`

Εδώ βρίσκεται το project. Αφού αντιγράψετε τον δικό σας κώδικα, εκτελέστε:

`composer install --no-dev`

`php artisan migrate --force`

`php artisan config:cache`

Το αρχείο `.env` είναι έτοιμο, γι' αυτό μην το αντικαταστήσετε. Το όνομα της βάσης και του χρήστη είναι και τα δύο `laravel`, ενώ ο κωδικός βρίσκεται στο πάνελ.

## Τι είναι έτοιμο

- Ο queue worker είναι η υπηρεσία `laravel-kuyruk`. Όταν αλλάζει ο κώδικάς σας, εκτελέστε `systemctl restart laravel-kuyruk`.
- Ο scheduler τρέχει κάθε λεπτό (`/etc/cron.d/laravel`).

## Δικό σας domain

1. Δείξτε την εγγραφή A του domain σας στη διεύθυνση IP του server σας.
2. Ως root, αντικαταστήστε το παλιό όνομα παντού: `sed -i 's/OLD_NAME/yourdomain.com/g' /etc/caddy/Caddyfile`. Το `OLD_NAME` είναι το τμήμα μετά το `https://` στη διεύθυνση που φαίνεται στο πάνελ.
3. Εκτελέστε `systemctl reload caddy`.

Το Caddy παίρνει και ανανεώνει μόνο του το πιστοποιητικό.

Ενημερώστε και το `APP_URL` στο αρχείο `.env`. Προς τα έξω είναι ανοιχτές μόνο οι θύρες **80**, **443** και η **22** για SSH.

**Δεν έχετε ακόμη server;** [Παραγγείλτε server με εγκατεστημένο το Laravel](https://www.seturack.com/el/laravel-vps): επιλέγετε το μέγεθος και πληρώνετε μόνο γι' αυτό που επιλέγετε.
