app | ||
bootstrap | ||
config | ||
database | ||
mysql | ||
nginx/conf.d | ||
php | ||
public | ||
resources | ||
routes | ||
storage | ||
tests | ||
.directory | ||
.docker-compose.yml.swp | ||
.editorconfig | ||
.env.example | ||
.gitattributes | ||
.gitignore | ||
.styleci.yml | ||
artisan | ||
composer.json | ||
composer.lock | ||
dev-start | ||
docker-compose.yml | ||
Dockerfile | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
phpunit.xml | ||
README.md | ||
run_watch.sh | ||
server.php | ||
tee | ||
tsconfig.json | ||
vite.config.mjs |
Pedi2
Aplicación de pedidos del Mercado Popular de Subsistencia.
Pedi2 está hecha en Laravel 12 y Vue 2 con Vite y Vuex.
Se utilizan los siguientes servicios, separadamente:
app
, un servicio que corre PHP8.3-FPM.db
, un servicio que corre MySQL 5.7.nginx
, un servicio que usa el servicio app para parsear código PHP antes de servir la aplicación de Laravel al usuario final.vite
, un servicio que corre el frontend de la aplicación.
Pre-requisitos
- docker
- docker-compose
Instalación
-
Una vez descargado el proyecto, hacé una copia del archivo
.env.example
que se encuentra en la raíz del proyecto y nombrala.env
. Seteá los valores correctos - específicamente, para las variables,APP_URL
,DB_USERNAME
yDB_PASSWORD
. Prestá atención a queDB_HOST
sea el nombre del servicio que corre MySQL (por defectoDB_HOST=db
). -
Levantá los contenedores, construyendo la imagen de la app primero:
docker-compose up --build
El ambiente ahora está andando, deberías ver los logs de cada servicio en la terminal. Falta ejecutar un par de comandos para terminar la instalación de Laravel. Podemos usar docker-compose exec [nombre-del-servicio]
previo a un comando para ejecutarlo dentro del contenedor.
- Abrí una nueva terminal, y terminá de instalar las dependencias de la app, según fueron definidas en
composer.json
:
docker-compose exec app composer install
- Generá una clave de aplicación. Esta clave se usa para encriptar datos sensibles:
docker-compose exec app php artisan key:generate
- Corré las migraciones y seeders de Laravel:
docker-compose exec app php artisan migrate:fresh --seed
-
Copia el token que se imprime al correr los seeders. Lo necesitamos para autenticar las llamadas que hagamos desde nuestro cliente web
-
Instala las dependencias de npm:
docker-compose exec app npm install
Ahora la aplicación está corriendo y la podés ver en el puerto 8000 de tu dominio o IP. En caso de que estés en tu máquina local, la vas a ver accediendo a http://localhost:8000
desde tu navegador.
Podés usar el comando logs
para ver los logs generados por tus servicios:
docker-compose logs nginx
Si estás actualizando o no te anda, probá limpiar los caches:
docker-compose exec app php artisan optimize:clear
docker-compose exec app composer dump-autoload