Laravel deployment with GitHub Actions

preview_player
Показать описание
In this video, I will provide you with a step by step guide towards deploying your Laravel application to multiple servers without any downtime using GitHub Actions so you can feel confident about deploying your application to production with the best results for your clients. This approach works for any application, whether it's WordPress, Symfony, the technique (atomic deployment) is the same.

If you like this video and would like to see more of these videos, be sure to subscribe to my channel and like this video. This helps me to share my learnings with more people. I truly appreciate any support.

▬ Contents of this video ▬▬▬▬▬▬▬▬▬▬

0:00 - Intro
0:59 - Quick introduction to GitHub Actions
1:22 - Setup GitHub Repository
1:55 - Install Laravel
2:55 - Creating our first workflow
3:50 - Create deployment artifacts job
16:11 - Setup DigitalOcean server
17:30 - Atomic deployment directory structure
21:59 - Prepare our release on servers
33:56 - Configure before hooks
38:02 - Activate release on servers
45:25 - Configure after hooks
46:12 - Server cleanup
48:35 - Summary and multi-server deployment demo
49:28 - Outro
Рекомендации по теме
Комментарии
Автор

I have to thank you here too. This is the more detailed guide that I found on this subject. Thank you very much.

wisliylopes
Автор

Hi Philo, thanks for this excellent tutorial on CI/CD with Laravel. I've been searching for a video like this for some time now. I love how you explained each step. Thanks, once again.

iamnomana
Автор

I have used this script for a year now, excellent ;)
It should be updated because github's set-output is getting deprecated and removed soon (FYI the link to the blog post points to 404).

RJFares
Автор

This is one of the best tutorials. Thanks for this excellent tutorial.

ashishroy
Автор

Hi Philo, This is great tutorial I've followed it continous 2 days to get setup final working model.Thanks a lot for your great effort to build this nice tutorial.

nteej-mink
Автор

I searched for this for a really long time. You helped me alot.

steckrein
Автор

couldn't skip a sec it was that good & detailed. Thanks Phil ♥

SouravRakshit_srv
Автор

Very detailed explanation thank you buddy, do more like this on YouTube please...

kohilankh
Автор

Hey Philo! This is great. I have been looking for something like this. Hopefully my days with FTP-uploads and forgetting files are gone. I will test this with a minor project I am currently working on.

TrondHus
Автор

Thanks a lot Philo, A really informative and excellent explanation on CI/CD.

Subscribed <3

RizwanSaleem
Автор

Hi Philo.. im waiting for next vidio pleaseeee

rasyidzuhri
Автор

Hey Philo, this is amazing content, also, would be great to see how did you set up your phpstorm IDE that it fires the autocomplition on yml files, this is really amazing. Thanks!

mikeglobal
Автор

Awesome Video! This tutorial is still works right now? for Laravel with Vite.

laduniestu
Автор

Hi Philo, great video! Let me know if you are interested in a Laravel project...

sharktankdevelopment
Автор

Amazing content, loved every bit.
How do I configure it on a shared hosting server(Apache)

lijahtech
Автор

Thanks a lot Philo for the great tutorial.
Can we use another directory outside public root to store artifacts, releases, storage and .env file? I think there is an security issue having .env in public root directory

tiktokdaily
Автор

This is an excellent tutorial; however, I was wondering if it could also be used with shared hosting.

michaelbarasa
Автор

Hi Philo! Thx you for your efforts to make a good video.I have one important question to you:
I am very inexperienced with deployment but I find it very dangerous to store the credentials in a json and upload it to the repository. Is that normal? I would have stored the crendetials as keys in GitHub secrets and only addressed them via variables in my deployment yml. What do you think?

njhuige
Автор

The parsing of the deployment-config.json fails for me. I get an error that says

Error when evaluating 'strategy' for job 'prepare-release-on-servers'. (Line: 54, Col: 17): After parsing a value an unexpected character was encountered: {. Path '[0]', line 2, position 5., (Line: 54, Col: 17): Unexpected value ''

I've tried modifying the json ond tweaking the action parsing code but can't get it to work.

dreed
Автор

Hi Philo thank you for this amazing tutorial! Just one questions regarding the deployments-config.json file that you commit in your repo and exposes all your servers sensitive data? do you think it could be a security risk? is there any way to have that file saved like github secrets or somewhere else where is more secure? thank you!!

superkajjin