CodelyTV / php-ddd-example

🐘🎯 Hexagonal Architecture + DDD + CQRS in PHP using Symfony 6

Home Page:https://pro.codely.tv/library/ddd-en-php

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dudas inicio proyecto

bareser opened this issue · comments

Hola, quisiera que me ayudéis a identificar las rutas que hay en el proyecto, mas que nada para hacer mis pruebas y analizar todo para entenderlo bien.

Solo me funciona estas dos:
http://localhost:8030/health-check
http://localhost:8030/courses-counter

Pero si intento abrir cualquier otra, me da un error:
{"code":"not_found_http_exception","message":"No route found for \u0022GET /courses\u0022"}

No sé si hay posibilidad de ver el listado de cursos, por ejemplo.
Otra pregunta ¿Hay login implementado?

Y por último, una duda más:
¿Como puedo visualizar la BBDD? por ejemplo con phpmyadmin? no sé como hacerlo
¿Como puedo ver el rabbitmq?

Gracias por adelantado y disculpad mi ignorancia, pero estoy empezando con todo esto.

Además, otra duda es, si quiero acceder desde el navegador web al controlador de Cursos, ¿cual es la url para el backend y para el frontend?. Revisando el fichero routes de cada uno, el path es igual para ambos.

Buenas,

Si ves el make file veras este código

prepare-local:
curl -sS https://get.symfony.com/cli/installer | bash

start-local:
symfony serve --dir=apps/mooc/backend/public --port=8030 -d --no-tls --force-php-discovery
symfony serve --dir=apps/backoffice/frontend/public --port=8032 -d --no-tls --force-php-discovery
symfony serve --dir=apps/backoffice/backend/public --port=8034 -d --no-tls --force-php-discovery

Así que te dice que lo que es la API lo lanza mediante Docker y lo que son los frontales lo hace mediante Symfony Local Web Server, para lanzar los frontales tendras que tener PHP y Symfony instalado en su equipo y podrás acceder a ellos sin problemas tras ejecutar make prepare-local y make start-local

Por otro lado para acceder a RabbitMQ si ves el docker compose file veras el puerto para acceder a el, pero sería este http://localhost:8090/

Te recomiendo que verifiques los tutoriales de CodelyTV tanto de Docker como de PhpDDD

Saludos,

Gracias por iluminarme!, con tu ayuda he visto y comprendido un poco más de toda la infraestructura del proyecto.
Graciassss

@keldrox estoy comprobado que al intentar acceder a la URL localhost:8084/courses me pide usuario y password.
No logro encontrar en la documentación o en cualquier archivo el usuario y contraseña ¿Como puedo saber estas credenciales?

Otra pregunta de novato. En este proyecto hay un mysql, yo estoy acostumbrado a trabajar con phpmyadmin, como gestor de BBDD, pero supongo que todo esto está ya muy obsoleto. ¿Sabrías indicarme como puedo visualizar las tablas y su contenido de este proyecto?
Supongo que mediante comandos SQL podría hacer consultas de algun modo, pero también creo que habrá forma de visualizar la BBDD de alguna forma más "comoda"?

Gracias de antemano, cualquier pista me será de gran ayuda.

Buenas @bareser

Bueno PhpMyAdmin es una herramienta genial!, no esta obsoleto se usa bastante y a día de hoy tiene aun soporte, así que por eso no te preocupes. El caso que Mysql esta en un contedor, puedes acceder a el y tirar de consultas SQL o por el contrario desde PhpStorm puedes conectarte a la base de datos directamente y veras las tablas más fácilmente o algún gestor tipo TOAD o lo que sea. Y si no te quieres complicar le metes un ficherito adminer y listo https://www.adminer.org/

Sobre el login estado invetigando y parece que usan un InMemoryAuthRepository que si lo ves los usuarios/contraseñas son
'javi' => 'barbitas', 'rafa' => 'pelazo',

Que por cierto si ves algún vídeo suyo es gracioso las contraseñas que han puesto hahahaha

Saludos!

Muchas gracias de nuevo @keldrox, por tu ayuda, así da gusto.
Con lo de phpmyadmin y BBDD genial, investigaré lo que me comentas.
Con respecto a las contraseñas, es verdad que ví esa clase que comentas InMemoryAuthRepository y las he utilizado pero me dan error y creía que no eran esas credenciales correctas, pero ya que lo dices puede ser que sí que sean correctas entonces pero me de error al intentar acceder al recurso. Investigaré a ver que ocurre.

Gracias compañero!

@keldrox creo que el error que me da:
{"code":"no_nodes_available_exception","message":"No alive nodes found in your cluster"}
es debido a que elasticsearch no está corriendo.
Estoy intentado buscar en el codigo la configuración de elasticsearch pero no consigo localizarla, lo maximo que he encontrado es que debe estar en: localhost:9200, pero no consigo ver si está funcionando o no.

En el docker-compose.yml no hay nada de elasticsearch.

¿Podría verlo, al igual que rabbitmq? que si accedo correctamente a su web admin ?
Gracias.

El elastic debería de ir fino, he actualizado el readme para aclarar qué servicios se levantan!

Saludos!!