Diferència entre revisions de la pàgina «Grup4 - 21. classVRroom. Dockerització del projecte Django.»

De Wiket
Salta a la navegació Salta a la cerca
Línia 24: Línia 24:
 
  WORKDIR /lms
 
  WORKDIR /lms
 
  EXPOSE 8000
 
  EXPOSE 8000
 
# runs the initvroom
 
ENTRYPOINT ["python3","manage.py"]
 
CMD ["initvroom.py"]
 
 
   
 
   
 
  # runs the development server
 
  # runs the development server

Revisió del 17:11, 29 març 2022

Una vez hecho el Fork del proyecto ClassVRroom del grupo 2 de AWS2, vamos a proceder a dockerizarlo, para ello hemos creado un Dockerfile el cual podemos ver en la parte inferior, como podemos ver exponemos el puerto 8000.


Dockerfile


# We Use an official Python runtime as a parent image
FROM python:3.8-slim

# install db libs
RUN apt-get update
RUN apt-get install -y default-mysql-client libmariadb-dev
RUN apt-get install -y libmariadb-dev-compat gcc gdal-bin libjpeg-dev

# install app libs
COPY requirements.txt requirements.txt
RUN pip3 install --no-cache-dir -r requirements.txt
#copy directory principal

COPY lms /lms


# establish workdir

WORKDIR /lms
EXPOSE 8000

# runs the development server
ENTRYPOINT ["python3","manage.py"]
CMD ["runserver","0.0.0.0:8000"]

También hemos creado un docker-compose.yml, en el cual establecemos la configuración de la DB y de la página, adjuntamos el contenido del documento a continuación


Docker-compose


version: '3.1'
services:
  django_app:
    build: .
    restart: always
    ports:
      - 8000:8000
    environment:
      - DATABASE_URL=sqlite:///db.sqlite3
      - DEBUG=False
      - SECRET_KEY=asecretkeyblabla
    volumes:
      - ./db.sqlite3:/lms/db.sqlite3

Finalmente como podemos ver en la imagen inferior hemos conseguido Dockerizar y poner en funcionamiento el Docker con la aplicación


Djangoenprod.png