{"id":26951638,"url":"https://github.com/derek486/hotelier-management-back","last_synced_at":"2026-04-13T13:03:16.456Z","repository":{"id":185153211,"uuid":"667479978","full_name":"Derek486/hotelier-management-back","owner":"Derek486","description":"Backend made in Django for hotel management project","archived":false,"fork":false,"pushed_at":"2025-03-25T12:57:58.000Z","size":1110,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-31T03:46:53.183Z","etag":null,"topics":["django","docker","mysql","nginx"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Derek486.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-17T15:42:19.000Z","updated_at":"2025-03-25T16:47:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"32e32a1d-baa9-4ae1-9353-0d3ba452853f","html_url":"https://github.com/Derek486/hotelier-management-back","commit_stats":null,"previous_names":["jjcondoripinto/unsaprojecthotelier_back","derek486/unsaprojecthotelier_back","derek486/hotelier-management-back"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Derek486/hotelier-management-back","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Derek486%2Fhotelier-management-back","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Derek486%2Fhotelier-management-back/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Derek486%2Fhotelier-management-back/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Derek486%2Fhotelier-management-back/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Derek486","download_url":"https://codeload.github.com/Derek486/hotelier-management-back/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Derek486%2Fhotelier-management-back/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31753552,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T09:16:15.125Z","status":"ssl_error","status_checked_at":"2026-04-13T09:16:05.023Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","docker","mysql","nginx"],"created_at":"2025-04-03T00:16:56.438Z","updated_at":"2026-04-13T13:03:16.440Z","avatar_url":"https://github.com/Derek486.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Django Backend\n\nPara ejecutar la aplicación con Docker, primero debemos de crear la base de datos, seguido deL proyecto de Django, para ello seguimos los siguientes pasos:\n\n\u003e [!NOTE]  \n\u003e La información completa de este proyecto se encontrará en el siguiente repositorio:\n\u003e https://github.com/Derek486/hotelier-management-stack.git \n\n## Requirements:\n\n-   asgiref\n-   packaging\n-   Django -\u003e El framework base (importante)\n-   django-cors-headers -\u003e Permite conexión desde otros servidores (importante)\n-   djangorestframework -\u003e Para la elaboración de apis (importante)\n-   gunicorn -\u003e Servidor basado en wsgi (importante)\n-   mysqlclient -\u003e Permite conexión con Mysql\n-   Pillow -\u003e Procesamiento de imágenes\n-   pytz -\u003e Manejo de zonas horarias\n-   sqlparse -\u003e Formato de sentencias SQL\n-   tzdata -\u003e Manejo de zona horaria\n\n## Mysql:\n\n1. Crear un contenedor de mysql, para ello primero deberás de construir la imagen a partir del Dockerfile, ubícate en el directorio 'mysql':\n\n    ```\n    cd ./mysql\n    ```\n\n2. Construir la imagen de mysql:\n\n    ```\n    docker build -t mysql_pweb .\n    ```\n\n## Django:\n\n1. Para crear la imagen de django seguiremos los mismos pasos que para el contenedor de mysql:\n\n    ```\n    cd ./python\n    docker build -t django_pweb .\n    ```\n\n## Conexion de red:\n\nPor defecto, cuando creemos los contenedores estos estarán separados y no tendrán comunicación, para ello podemos crear un docker-compose e implementar ambos contenedores como servicios, sin embargo, usaremos otro comando:\n\n```\ndocker network create web\n```\n\nDonde 'web' será el nombre de nuestra red, siendo útil para comunicar los contenedores de mysql y django.\n\nLuego de crear la red podemos iniciar los contenedores, sin embargo, para evitar la pérdida de información se opta por crear volúmenes, para ello, utilizamos la opción '-v':\n\n```\ndocker run -d -p 3306:3306 --name db --network web -v db_pweb_volume:/var/lib/mysql mysql_pweb\ndocker run -d -p 8000:80 --name django --network web -v django_pweb_volume:/usr/src/app django_pweb\n```\n\nEsperamos a que el contenedor de mysql termine de iniciar y acepte conexiones, luego de ello creamos el contenedor de django, si lo ejecutó antes puede reiniciarlo hasta que la base de datos esté disponible.\n\n\n## Ejecución local:\n\nSi no se desea crear un contenedor de Docker, el proyecto puede ser iniciado de manera local, para ello se deben tomar en cuenta las siguientes consideraciones:\n\n-   La base de datos puede mantenerse, en caso se haya creado el contenedor de mysql, solo se tendría que modificar el host a localhost y en el puerto 3306, si no se creó con anterioridad entonces en `settings.py` se deben de colocar los datos de la base de datos local.\n\n-   En caso se haga uso del servidor de nginx, puede ser utilizado el archivo `app_nginx.conv` dentro del directorio `python/nginx`, con la diferencia de que el servidor de backend debería escuchar al host localhost y en el mismo puerto 8000, caso contrario, puede utilizar el servidor de wsgi de django: `python manage.py runserver`\n\n-   Las migraciones se ejecutarían de forma manual, al igual que la creación del superusuario.\n\n-   Para la conexión con el Front End de Angular, será necesario modificar el CORS en `settings.py`, autorizando a localhost y el puerto por defecto de Angular, sea 4200 o, si se utiliza su servidor de nginx, sería en el puerto 80\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fderek486%2Fhotelier-management-back","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fderek486%2Fhotelier-management-back","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fderek486%2Fhotelier-management-back/lists"}