Giter Club home page Giter Club logo

docker-humble's Introduction

Docker Humble

Smooth Experience for Developing and Deploying with Docker

Stories in Ready

Where is the Poo?

When I begun to work with Docker I was thrilled about the possibility to launch an ElasticSearch server with a single command line. When I met docker-compose I was thrilled by the possibility to concatenate many different services into one single application.

My questioning soared when the time had come for me to deploy.

  • how do I distribute my app for different environments?
  • where do I store my images?
  • are DockerCloud and DockerHub good for me?

Those were not so simple questions to answer and on top of it I had a couple of constrains from my boss:

  • we can not ask our frontend developers to become bash experts
  • we can not afford a virtual server for each app
  • we are making Wordpress websites, we are no SpaceX!

For all we knew a shared virtual hosting based on a *AMP machine was all we needed to run our business, still I was thrilled by the idea to put some simple NodeJS services beside the main Wordpress so to run jobs more efficiently, and wrap it up with NGiNX.

I also pulled out my wish list:

  • we should work with whatever language suits the job
  • we should be able to run a GitHub based release (aiming for CI)
  • we should be able to run our apps in different environments easily

We are still working on a solution, and we are bringing ideas and code together under this repository.
And that is how docker-humble was born!

Mainstream Features

For your App

  • use docker-compose commands to run your app (./humble up)
  • describe different environments with different docker-compose files
  • use a .env file to tell which environment to run
  • use our utils image to run boring tasks like:
    • seeding file volumes
    • seeding databases (mysql, postgres, mongo)
    • backup file volumes
    • backup databases

For your Server

  • use docker-compose commands to run many multi service apps (./humble-server up)
  • use a YAML config file to distribute ports and set host names for each app
  • automagically run an NGiNX reverse proxy
  • achieve zero downtime when deploying new stuff (WiP)

Scaffolding

We believe in time efficiency so whenever you need to start a new project, we aim to provide you with a ready to use template for it:

Compose Utility Scripts

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.