Git Product home page Git Product logo

kuzgun.io's Introduction

kuzgun.io

Dockerized online streaming software.

Build Status Coverage Status

๐Ÿ“ Feature roadmap

Installation

kuzgun.io is designed to be run on your server effortlessly. Only thing you have to do install Docker on your server to build and run kuzgun.io.

Contents:

Running on Ubuntu 16.04

Pre-requisites

  • Ubuntu 16.04
  • Docker
  • At least 1GB memory. (swap can be used)
  • At least 5GB disk space. (make sure you have enough space to download things)

Setup

First, let's update and upgrade our packages. Also you have to install software-properties-common

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install -y software-properties-common

Add the GPG key for the official Docker repository to the system:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Add the Docker repository to APT sources:

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo apt-get update

Make sure you are about to install from the Docker repo instead of the default Ubuntu 16.04 repo:

$ apt-cache policy docker-ce

Now you're ready to install Docker.

$ sudo apt-get install -y docker-ce

Hang on, this is the final step for Docker installation. Download docker-compose. Phew! You should specify the latest version of docker-compose.

$ export DOCKER_COMPOSE_VERSION=1.15.0
$ sudo curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

Apply executable permissions to the binary:

$ sudo chmod +x /usr/local/bin/docker-compose

Finally, now we are ready to download kuzgun.io on our server.

$ curl -L https://github.com/yigitgenc/kuzgun.io/archive/master.zip -o kuzgun.io.zip
$ unzip kuzgun.io.zip

If you don't have unzip; install it by doing $ sudo apt-get install -y unzip.

Go to project's root by doing cd kuzgun.io and create your .env file:

$ echo "
# Make it hard to guess by someone else and keep it secret. You can generate 
# your secret key by using this link: https://www.miniwebtool.com/django-secret-key-generator/
SECRET_KEY=VerySecretKey
# Set your timezone. More information: 
# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TZ=Europe/Istanbul
" > .env

Go build and run the following commands respectively:

$ sudo docker-compose build
$ sudo docker-compose up -d
$ sudo docker-compose run --rm app python manage.py migrate
$ sudo docker-compose run --rm app python manage.py collectstatic --noinput

Create your superuser and get your credentials.

$ sudo docker-compose run --rm app python manage.py createsuperuser
$ Username: yourusername
$ Email address: [email protected]
$ Password: yourpassword
$ Password (again): yourpassword

You're all set! Go and login to the web app on the browser to start using kuzgun.io immediately: http://your_server_ip or http://yourdomainname.com

Running on your computer

Installing

Get Docker first:

And clone the repo by using git:

$ git clone [email protected]:yigitgenc/kuzgun.io.git
$ cd kuzgun.io/
$ git lfs pull  # This is required to run tests.

Running

To build and run kuzgun.io, go to project's root directory and run the following commands respectively:

$ sudo docker-compose build
$ sudo docker-compose up -d
$ sudo docker-compose run --rm app python manage.py migrate
$ sudo docker-compose run --rm app python manage.py collectstatic --noinput

Debugging

$ docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d

Tests

$ docker-compose -f docker-compose.yml -f docker-compose.dev.yml run --rm --user='app' app coverage run manage.py test --verbosity=2

If you are running tests as a root user in your host; specify --user='root' argument to the docker-compose run command.

Coverage report will be generated in htmlcov directory.

kuzgun.io's People

Contributors

monolizard avatar yigitgenc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.