Duckiter will Automatically dockerize your Django projects.

Overview


Duckiter

Duckiter will Automatically dockerize your Django projects.

Requirements :

- python version : python version 3.6 or upper version
- OS : 
    - linux
    - MacOS
    - windows ( drop support )
- docker engine installed in your machine and already run through the usage of package

Installation :

clone project:

pip install duckiter

Usage :

Duckiter has two individual steps:

​ 1- initialize Dockerfile

​ 2- build image from created Dockerfile

To initialize Dockerfile (step 1) :

in terminal hit to your project directory ( where manage.py is in root ):

duckiter --init

This will create Dockerfile and config.cfg in the root of the project, and you can manipulate those files before Duckiter creates an image. If you are ok with our configurations, you can just pass '-b' to immediately build the image right after creating the Dockerfile.

duckiter --init -b

To build image (step 2) :

To build an image from the Dockerfile that has been created in the last step, you need enter:

duckiter main.py --build

this will look for config.cfg in project directory and then build the image.

Troubleshooting :

  • if you get blow error while your docker engine is already run :
[ WARNNING !!!! ] It seems your docker engine doesn't run, please run the Docker engine.

​ you can fix this issue , just enter these commands :

$ sudo groupadd docker
$ sudo usermod -aG docker $USER
$ newgrp docker

now problem fixed and you can run command again.

  • if you got error like :

    duckiter : command not found
    

    you can fix this issue by adding your python package directory into you PATH.

Contribution :

feel free to contribute to this project, but first contact me about the idea :)

You might also like...
Django-Audiofield is a simple app that allows Audio files upload, management and conversion to different audio format (mp3, wav & ogg), which also makes it easy to play audio files into your Django application.
Django-Audiofield is a simple app that allows Audio files upload, management and conversion to different audio format (mp3, wav & ogg), which also makes it easy to play audio files into your Django application.

Django-Audiofield Description: Django Audio Management Tools Maintainer: Areski Contributors: list of contributors Django-Audiofield is a simple app t

A Django app to initialize Sentry client for your Django applications

Dj_sentry This Django application intialize Sentry SDK to your Django application. How to install You can install this packaging by using: pip install

A tool to automatically fix Django deprecations.
A tool to automatically fix Django deprecations.

A tool to help upgrade Django projects to newer version of the framework by automatically fixing deprecations. The problem When maintaining a Django s

Get inside your stronghold and make all your Django views default login_required

Stronghold Get inside your stronghold and make all your Django views default login_required Stronghold is a very small and easy to use django app that

DCM is a set of tools that helps you to keep your data in your Django Models consistent.
DCM is a set of tools that helps you to keep your data in your Django Models consistent.

Django Consistency Model DCM is a set of tools that helps you to keep your data in your Django Models consistent. Motivation You have a lot of legacy

Automatically reload your browser in development.

django-browser-reload Automatically reload your browser in development. Requirements Python 3.6 to 3.10 supported. Django 2.2 to 4.0 supported. Are yo

Meta package to combine turbo-django and stimulus-django

Hotwire + Django This repository aims to help you integrate Hotwire with Django 🚀 Inspiration might be taken from @hotwired/hotwire-rails. We are sti

django-reversion is an extension to the Django web framework that provides version control for model instances.

django-reversion django-reversion is an extension to the Django web framework that provides version control for model instances. Requirements Python 3

Django project starter on steroids: quickly create a Django app AND generate source code for data models + REST/GraphQL APIs (the generated code is auto-linted and has 100% test coverage).

Create Django App 💛 We're a Django project starter on steroids! One-line command to create a Django app with all the dependencies auto-installed AND

Comments
  • Fix path exceptions in `nt` & Auto requirements.txt generator from virtual environment

    Fix path exceptions in `nt` & Auto requirements.txt generator from virtual environment

    I got an error that I tried to fix it and also added a new feature to the project that if the requirements.txt file does not exist, it will be created through the project virtual environment (if it exists) :)

    The project was tested without error on the following systems:

    • Windows 10 Enterprise
    • Manjaro Linux XFCE Edition

    About changes:

    1. When using this project on an nt system, I will encounter path errors. This is one of this errors:
    File "c:\users\Matin\appdata\local\programs\python\python38\lib\site-packages\duckiter\utility.py", line 48, in get_django_project_name
        return project_main_dir.split('/')[-2]
    IndexError: list index out of range
    

    Path separators are \\ in nt systems and / in posix systems, and you tried to separate or join the directories in the code using / and since I did this project I ran it on an nt system and os.getcwd() returns my directory to me using \\, this would cause an error.

    1. I also added automatically generate requirements.txt through the virtual environment in the project. When the requirements.txt file does not exist but the virtual environment is in the project (where manage.py exists), the requirements.txt file is automatically created by the modules installed in the virtual environment :)
    opened by ThisIsMatin 1
Releases(v0.1.9)
Owner
soroush safari
A software engineer who finds his interest in the computer world. I'm always searching for focus, a better way, and the most crucial part of life, happiness.
soroush safari
A simple demonstration of how a django-based website can be set up for local development with microk8s

Django with MicroK8s Start Building Your Project This project provides a Django web app running as a single node Kubernetes cluster in microk8s. It is

Noah Jacobson 19 Oct 22, 2022
Add infinite scroll to any django app.

django-infinite-scroll Add infinite scroll to any django app. Features - Allows to add infinite scroll to any page.

Gustavo Teixeira 1 Dec 26, 2021
Show how the redis works with Python (Django).

Redis Leaderboard Python (Django) Show how the redis works with Python (Django). Try it out deploying on Heroku (See notes: How to run on Google Cloud

Tom Xu 4 Nov 16, 2021
An example of Django project with basic user functionality and account activation.

Simple Django Login and Registration An example of Django project with basic user functionality. Screenshots Log In Create an account Authorized page

Hussein Sarea 3 Oct 19, 2022
A drop-in replacement for django's ImageField that provides a flexible, intuitive and easily-extensible interface for quickly creating new images from the one assigned to the field.

django-versatileimagefield A drop-in replacement for django's ImageField that provides a flexible, intuitive and easily-extensible interface for creat

Jonathan Ellenberger 490 Dec 13, 2022
Generate generic activity streams from the actions on your site. Users can follow any actors' activities for personalized streams.

Django Activity Stream What is Django Activity Stream? Django Activity Stream is a way of creating activities generated by the actions on your site. I

Justin Quick 2.1k Dec 29, 2022
This is django-import-export module that exports data into many formats

django-import-export This is django-import-export module which exports data into many formats, you can implement this in your admin panel. - Dehydrat

Shivam Rohilla 3 Jun 03, 2021
Extensions for using Rich with Django.

django-rich Extensions for using Rich with Django. Requirements Python 3.6 to 3.10 supported. Django 2.2 to 4.0 supported. Are your tests slow? Check

Adam Johnson 88 Dec 26, 2022
A Minimalistic Modern Django Boilerplate

A Minimalistic Modern Django Boilerplate This boilerplate is mainly for educational purposes. It is meant to be cloned as a starter code for future tu

Jonathan Adly 21 Nov 02, 2022
Simple application TodoList django with ReactJS

Django & React Django We basically follow the Django REST framework quickstart guide here. Create backend folder with a virtual Python environment: mk

Flavien HUGS 2 Aug 07, 2022
Django + Next.js integration

Django Next.js Django + Next.js integration From a comment on StackOverflow: Run 2 ports on the same server. One for django (public facing) and one fo

Quera 162 Jan 03, 2023
Sampling profiler for Python programs

py-spy: Sampling profiler for Python programs py-spy is a sampling profiler for Python programs. It lets you visualize what your Python program is spe

Ben Frederickson 9.5k Jan 01, 2023
Use webpack to generate your static bundles without django's staticfiles or opaque wrappers.

django-webpack-loader Use webpack to generate your static bundles without django's staticfiles or opaque wrappers. Django webpack loader consumes the

2.4k Dec 24, 2022
Full featured redis cache backend for Django.

Redis cache backend for Django This is a Jazzband project. By contributing you agree to abide by the Contributor Code of Conduct and follow the guidel

Jazzband 2.5k Jan 03, 2023
Getdp-project - A Django-built web app that generates a personalized banner of events to come

getdp-project https://get-my-dp.herokuapp.com/ A Django-built web app that gener

CODE 4 Aug 01, 2022
Logan is a toolkit for building standalone Django applications

Logan Logan is a toolkit for running standalone Django applications. It provides you with tools to create a CLI runner, manage settings, and the abili

David Cramer 206 Jan 03, 2023
A handy tool for generating Django-based backend projects without coding. On the other hand, it is a code generator of the Django framework.

Django Sage Painless The django-sage-painless is a valuable package based on Django Web Framework & Django Rest Framework for high-level and rapid web

sageteam 51 Sep 15, 2022
A blog app powered by python-django

Django_BlogApp This is a blog app powered by python-django Features Add and delete blog post View someone else blog Can add comment to that blog And o

Manish Jalui 1 Sep 12, 2022
A simple demonstration of integrating a sentiment analysis tool in a django project

sentiment-analysis A simple demonstration of integrating a sentiment analysis tool in a django project (watch the video .mp4) To run this project : pi

2 Oct 16, 2021
Django-powered application about blockchain (bitcoin)

Django-powered application about blockchain (bitcoin)

Igor Izvekov 0 Jun 23, 2022