Git Product home page Git Product logo

docker-django's Introduction

Django - Docker

Pasos para iniciar un proyecto con Django utilizando Docker dentro del flujo de trabajo. Se utiliza projectname para hacer referencia al nombre del projecto.

Pre requisito

  • Tener instalado Docker. Si está utilizando Mac OS X instale Docker Toolbox.

Paso Uno - Establecer Estructura.

Descargar estructura del proyecto

Se descarga el proyecto que contiene la estructura general.

git clone https://github.com/mmorejon/docker-django.git projectname

Eliminar carpeta de Git

La carpeta .git se elimina para crear un nuevo repositorio.

cd projectname
rm -rf .git/

Crear nuevo repositorio dentro del proyecto

Se inicia el control de versiones dentro de la carpeta del proyecto para registrar los cambios.

git init

Paso Dos - Crear Imagen de Docker

Crear Imagen en Docker

Se crea la imagen de Docker para el projecto. La imagen va a contener la instalación de los requerimientos establecidos en el fichero requirements.txt.

El fichero requirements.txt contiene los requisitos básicos para el inicio y despliegue de una aplicación con Django, si necesita adicionarle nuevos elementos este es un buen momento.

docker build -t projectname:1.0 .

Siempre que modifique los elementos dentro del fichero requirements.txt tiene que repetir este paso.

Configurar Docker Compose

En el fichero docker-compose.yml se modifica el nombre de la imagen que será utilizada. El nombre de la imagen se ha establecido en el paso anterior. La zona que se modifica dentro del fichero es la siguiente:

image: projectname:1.0

Paso Tres - Crear Proyecto Django

Crear Proyecto Se crea el proyecto utilizando los mismos comandos descritos por el sitio Django.

docker-compose run web django-admin startproject projectname .

Probar el sistema Para probar si el sistema está funcionando correctamente se ejectua el siguiente comando. En el navegador se puede revisar la aplicación en la siguiente dirección http://<ip-máquina:8000>. El puerto de salida puede ser configurado en el fichero docker-compose.yml.

docker-compose up

Para el sistema Se detiene el sistema de ser necesario para continuar con las configuraciones.

Ctrl-C

Paso Cuatro - Crear Aplicación

Para crear una aplicación dentro del proyecto Django se utiliza el siguiente comando:

docker-compose run web python manage.py startapp app

Paso Cinco - Crear Usuario

Los usuarios se crean utilizando el mismo comando descrito en la documentación de Django.

docker-compose run web python manage.py createsuperuser

Paso Seis - Entorno de Producción

Para utilizar la aplicación en el entorno de producción se debe configurar los siguientes ficheros:

Adicionar al final del fichero projectname/settings.py la siguiente línea:

STATIC_ROOT = './static/'

Adicionar la línea command: ./run-production.sh al fichero docker-compose.yml quedando de la siguiente forma:

web:
  image: projectname:1.0
  command: ./run-production.sh
  volumes:
    - .:/code
  ports:
    - "8000:80"

Para finalizar debe modificar el nombre del proyecto projectname en el fichero conf/app.ini.

Enlaces relacionados con el tema

docker-django's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.