/dockurr

Simple container-as-a-service using Docker Engine and Flask

Primary LanguagePythonMIT LicenseMIT

dockurr

dockurr adalah proyek yang ditujukan untuk project-based learning mata kuliah Komputasi Awan (MII212610) kelas KOMA UGM periode 2022 Genap. dockurr didesain sebagai suatu layanan Container-as-a-Service (CaaS) yang pada dasarnya menggunakan Docker Engine.

Lihat diagram konsep/arsitektur

Anggota Kelompok

  1. Kadek Ninda Nandita Putri
  2. Rachel Naragifta
  3. Ronggo Tsani Musyafa
  4. Faiz Unisa Jazadi

Tech stack

  1. Docker Engine
  2. Flask (web interface)
  3. Celery (scheduling dan tasks)
  4. Redis (menyimpan metadata celery beat)
  5. RabbitMQ (menyimpan antrian untuk celery worker)
  6. Jinja2 (front-end)

Development Setup (WIP)

dockurr memerlukan Python 3.11 (belum dicoba di versi lain) RabbitMQ, dan Redis.

  1. (Opsional) Jalankan service yang diperlukan (seperti Redis) menggunakan Docker Compose

    docker compose up
  2. Install requirements

    pip install -r requirements.txt

    Opsional, install juga development requirements

    pip install -r requirements.txt -r dev-requirements.txt

    Note: pengelolaan dependensi dilakukan dengan menggunakan pip-tools.

  3. Atur konfigurasi pada config.toml (salin dari config-dist.toml).

  4. (Opsional) Jalankan RabbitMQ via Docker (bisa diinstall juga)

    docker run -d -p 5672:5672 rabbitmq
  5. Jalankan semua service dengan command ./run-dev

Lisensi

MIT License