How we Deploy Laravel: Branches, Staging Servers, Forge and Envoyer

preview_player
Показать описание
Step-by-step video of a typical way we test and deploy Laravel projects. We use Laravel Forge and Envoyer for this, but you can set up your own other tools or do it manually, it's more about processes than tools.

Related videos:

- - - - -

- - - - -
Рекомендации по теме
Комментарии
Автор

If you deploy through SSH (rsync/scp/so on) with Gitlab CI or Bitbucket Pipelines or other service:
- no need to install git || Composer || backend and frontend testing frameworks || nodejs just for frontend builds on your production server,
- no deploy blocking git conflicts
- no Envoyer's monthly charge (starts from 10 USD)
- more secure server management in private management network (not from public internet)
- multiserver deployment (?),
- no release previews based branch name and available on separate subdomains

Anyway, those are nice tools!
and thank you for the video ;)

ElTebe
Автор

Wow! This is really good. I wish someone could do one with envoyer skipping forge. But all around forge is really awesome & it saves a lot of time.

muchiri
Автор

Very useful stuff. Though, I think it's also possible to do the deployments into a separate folder with Forge and then just change the symlink, so we'll have zero downtime as well.

igrman
Автор

Never used these tools, it's nice to see then in action. You probably can get the same effect from Envoyer on Forge, you just need to create some smart script to handle the change of symbolic links

lfnkf
Автор

please do you have a video on how to deploy to digital ocean, your tutorials are really clear and useful, thanks

skills_set
Автор

Great demostration!
Why would we run migrations on a live project? Wouldn't that delete db data?

skapator
Автор

Is there a workaround for zero-time deployments via Envoyer in terms of DB changes? For example, new deploy does some changes to database vie migrations (not necessary only altering tables, but also some mass data-changes or filling enum-like tables), but there are at least following cases:
1) Web app of old version is still up and uses the same DB that is used with new version, but deploy fails for some reason. Deploy rollback reverts code changes but not the DB changes
2) Old web app version for some time uses DB after migrations are applied, it may result in errors or wrong data in DB

VladimirBerezkin
Автор

I understand that this sends code changes, but what about changes in the database values? The migration changes can be pushed via forge but what about any data that needs to go from local dev to the dev server, then to the live server? Thanks!

WallyJK
Автор

Thank you.
So, what's the difference between forge & envoer ?
For smooth manage, doest it need both ?
Or either one helps ?
When to use Deployment for push and when for release?

KaziShahinWebdevelopment
Автор

I'm curious if it is a real deployment script, when you show how to deploy from master branch. because of that `migrate:fresh --seed` line... ;)

mityukov
Автор

Nice video! Migrate fresh seed on production though? Only for first time?

seabass
Автор

Thank for the nice tutorial, I really enjoy. I have a question for you if a client comes to you and asks, can you build a website for our church without more details /main purpose of the website. What kind of questions will you ask to accomplish the tasks?. My church, they have asked me to build their website from scratch, what the want is to upload the video /to stream the video live. I need to know what steps should I take to make sure that I fulfill the needs of the clients. OR can u make a short video for this if u can

bernardchisumo
Автор

Dear Sir. Please, do you have a course on this? I think it'll be very helpful if there was a course which taught how do you manage the database for both staging and live environments, handling the GitHub workflow, how to handle backups etc. Do you maintain 3 databases; live, staging, backups ?. How do you handle these scenarios.

shofada
Автор

Is this still how you deploy Laravel projects or do you have an updated workflow?

WallyJK
Автор

Why you use TWO servers for the same project? why not just ONE server and TWO sites (staging and production)???
(first part of the video question).

JohnSmith-zlrz
Автор

Cool, you could make that from scratch, not everyone has money for Laravel Forge

ProgrammingwithPeter