I'm trying to dive into Laravel for the first time, but can't seem to just get it started. I'm in a Linux environment and following the instructions on the Laravel site: https://laravel.com/docs/8.x/installation
curl -s https://laravel.build/stupidApp | bash
"Thank you! We hope you build something incredible. Dive in with: cd stupidApp && ./vendor/bin/sail up"
So far so good.
cd stupidApp && ./vendor/bin/sail up
"ERROR: The Compose file './docker-compose.yml' is invalid because: Unsupported config option for services.meilisearch: 'platform'"
sudo yum update docker-compose
"No packages marked for update"
Alright, let's back up and do this without meilisearch. Let's just strip it down to MySQL.
rm -R stupidApp
curl -s "https://laravel.build/stupidApp?with=mysql" | bash
Seems to work. Carrying on....
cd stupidApp && ./vendor/bin/sail up
"W: GPG error: http://security.ubuntu.com/ubuntu hirsute-security InRelease: gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed E: The repository 'http://security.ubuntu.com/ubuntu hirsute-security InRelease' is not signed."
Now, at this point, as far as I can tell, Laravel's own Dockerfile is failing to build the image.
vim ./vendor/bin/sail
The script checks that docker-compose is installed, checks the OS type (Linux), sources the environmental variables from .env, makes some new variables out of those ones, then basically checks to see if you passed a variable other than "up". If not, it just runs "docker-compose up", and the context of that is the docker-compose.yml file found at the root of the project. Inspecting that file.....
vim docker-compose.yml
We can see that it's attempting to build the Dockerfile found at ./vendor/laravel/sail/runtimes/8.1 So, I try building that directly.....
cd vendor/laravel/sail/runtimes/8.1
docker build .
"W: GPG error: http://security.ubuntu.com/ubuntu hirsute-security InRelease: gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed E: The repository 'http://security.ubuntu.com/ubuntu hirsute-security InRelease' is not signed."
...and get the exact same error. Naturally, the first line of the Dockerfile defines the base image "FROM ubuntu:21.04" So, I try changing this to some other common versions of Ubuntu, and I get different errors. At this point, the errors seem irrelevant, because this is a Dockerfile published by Laravel and it should just work.
Am I doing something wrong?
My understanding of containers and building images tells me that if this isn't working for me, then it isn't working for anyone. This would lead me to believe that this isn't actually the entry point for learning Laravel. (Is anyone actually doing it this way?)
Where are people actually going to use and learn Laravel? Where is Laravel actually happening?