/dbmq

Docker-based Message Queuing

Primary LanguagePythonGNU General Public License v3.0GPL-3.0


Docker-based Message Queuing
Docker SDK - Article on Medium - Read the Docs here ➤
Build and ship your Dockerized Django applications and feel free to use MBs

Documentation Status

Introduction

Docker-based Message Queuing (DBMQ) is an efficient way to run the pre-built configurations on the build process of Dockerfiles. Once you have finished configuring, you will be able to create your images based on your configurations. DBMQ is very flexible with Django projects and you might stay away from troubles with creating a Dockerized Django project. After the building process, your image will be ready to get started. Use a text editor to step through your container and make changes. (the pre-installed editor is Vim)

Why DBMQ is Needed?

This system locates between the user and the Docker service. You config your requirements and let this automated system to provide them to you. You don't need to be a genius in Docker, just keep configuring. There is a channel between Docker and DBMQ called SDK. There are several services, but there is only one service that allows DBMQ to interact with Docker, which called Docker Engine API. Docker is a distributed computing platform that allows you to decrease the latency and to cheap your project. You can keep up your project with distributed resources. (brokers, databases, etc)

Installation

Before you clone DBMQ, you better make sure your Docker service is installed successfully. If there is something wrong, you can start browsing on the Docker Installation Guide on Linux. Make sure your Docker is running.

$ sudo systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor p>
     Active: active (running) since Mon 2020-09-07 23:47:00 +0430; 1s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 5644 (dockerd)
      Tasks: 25 (limit: 4502)
     Memory: 184.1M
     CGroup: /system.slice/docker.service
             ├─5644 /usr/bin/dockerd -H fd://
             └─5652 containerd --config /var/run/docker/containerd/containerd.t>

Clone the repository with the following command and either create a new virtualenv or, just keep installing the libraries on your real machine.

$ git clone https://github.com/lnxpy/DBMQ.git
...
$ cd ./DBMQ
$ virtualenv .venv
...
$ source .venv/bin/activate
(.venv)$ pip install -r requirements.txt
  • Without virtualenv
$ pip3 install -r requirements.txt

Installation has been completed. For the further steps, check out the documents.

To-Do

The following to-do task list should be followed in order. If you are experienced enough in these tasks, you can start contributing to DBMQ. Fork the project, create PRs and I'll review them. If you've done any further task, change your task context grammatically in the following list.

  • version 2.1 is being released
  • Docker_images removed from the whole project
  • New logo represented for DBMQ v2.1
  • Start writing documentations (Sphinx)
  • Using python docker images instead of linux distros
  • Tests
  • New feature -> streaming the running containers
  • Updating the links in the exceptions and repo
  • Database implementation process
  • Broker implementation process
  • version 2.2 is being released

License & Contribution

DBMQ is licensed by GPL-v3 (quick guide reference).