Skip to content

DaniilTsitavets/devops_todolist

 
 

Repository files navigation

Django ToDo list

This is a todo list web application with basic features of most web apps, i.e., accounts/login, API, and interactive UI. To do this task, you will need:

Explore

Try it out by installing the requirements (the following commands work only with Python 3.8 and higher, due to Django 4):

pip install -r requirements.txt

Create a database schema:

python manage.py migrate

And then start the server (default is http://localhost:8000):

python manage.py runserver

Now you can browse the API or start on the landing page.

Task

Create a Dockerfile for the ToDo app:

  1. Fork this repository.
  2. ToDo app should start inside a container without an error.
  3. Dockerfile should contain the build stage and run stage.
  4. Add ARG as Python base image version in Dockerfile.
  5. Execute database migration as RUN instruction.
  6. Add the ENV PYTHONUNBUFFERED=1 variable to optimize the Python app for Docker (writing logs directly to stdout and stderr without buffering in the app process memory.
  7. runserver should be followed by the 0.0.0.0:8080 parameter to start the Django server properly.
  8. Build an image and name it todoapp.
  9. The image should be pushed to your personal Docker Hub account into the todoapp repository with the 1.0.0 tag (todoapp:1.0.0).
  10. README.md should contain a link to your personal Docker Hub repository win an app image.
  11. README.md should contain all the instructions for building and running the container.
  12. README.md should contain instructions on accessing the application via a browser.
  13. Create PR with your changes and attach it for validation on a platform.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 67.6%
  • HTML 15.7%
  • CSS 10.9%
  • JavaScript 5.8%