Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use Docker Compose for development #20

Open
germanescobar opened this issue May 17, 2020 · 3 comments
Open

Use Docker Compose for development #20

germanescobar opened this issue May 17, 2020 · 3 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@germanescobar
Copy link
Contributor

To ease the development environment configuration we need to create a docker-compose configuration to run the project locally using containers.

@germanescobar germanescobar added enhancement New feature or request help wanted Extra attention is needed labels May 17, 2020
@jairorjuela
Copy link

Hola!, para la implementación de Docker tengo unas dudas.

  1. Qué cuenta de dockerhub se usaría?
  2. Veo que esta separado el front, entonces no sería un monolito, digamos sería un "micro-servicio", entonces si van a manejar integración continua, y docker, sería chevere hacer un monolito o seguir por el micro servicio pero dividir entonces en dos proyectos de GitHub, para poder hacer una imagen de cada servicio, es decir una imagen de docker de front y una de back y así mismo cuando se integre algo como Semaphoreci(es muy bueno) se hace de manera independiente, si se van a manejar varios colaboradores creo que sería mejor igual dividir por repos. también ayudaría para manejar errores ya en producción.

En este órden de ideas, para implementar ya mismo Docker(lo cual sería genial por los colaboradores) se dificulta montar una sola imagen(de este repo actual), sería mejor un repo de front, uno de back, se maneja como microservicio, dos imagenes diferentes de docker, en un futuro despliegues pequeños, testeados, ya no habría necesidad de una instancia tan grande(si se usara AWS), dos instancias pequeñas una con back y otra con front.

Si se decide dejar el repo como esta se puede implementar docker y docker-compose pero sería un poco más complejo y sería tener en cuenta que en un futuro sería un poco más lento el CI, CD mientras suben los specs de front y back así sea por un feature pequeño.

@Mardiniii
Copy link
Contributor

Mardiniii commented May 19, 2020

Hola @jairorjuela, gracias por el comment.

  1. Buena pregunta, voy a trabajar en eso y te cuento. Probablemente tengamos una de Make It Real que podamos usar.
  2. Este es un buen punto por el tema del CI sería bueno que tuviéramos repos separados. Inicialmente habíamos pensado en tener submodules, creo que ese es un buen approach para revisar y podemos tener los dos repos separados como propones. Esto lo he usado antes y la verdad me gusta mucho. Creo que con un docker-compose en el directorio inicial podríamos levantar todos los servicios que necesitemos. Que te parece?

@jairorjuela
Copy link

Hola, si es bueno tener claro lo de la cuenta, en dado caso se podría hacer un PR con los Docker y docker-compose y ya el propietario de la cuenta le hace el push a la imagen en Docker.

Si creo que es mejor separar repos, lo de submodules se ve chevere, pero entiendo que es más funcional para librerías, respecto a eso tengo unas dudas:

  • Se crea un repo crown con los submodules backend y frontend, pero al momento de hacer un rebase por ejp qué tan fácil es de manejar con submodules?, o en despliegues si haces un feature de un botón en el front, entonces tendría que desplegar también el back? porque a nivel de costos creo que aumentaría un poco por ese despliegue extra, también me queda la duda, con docker del bindeado de esas carpetas, porque si en la misma clonación de git toca usar un recurso para bajar la carpeta que sea submodule, no se como lo haría docker, creo que tocaría revisar o hacer unas pruebas, o irse por micro servicio y dividir back y front y manejar el back como solo API.

Gracias por el recurso de submodules, esta interesante la info

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants