All Projects → expiringcode → blimp

expiringcode / blimp

Licence: MIT license
Web development with docker made easy

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to blimp

Takeoff
A rapid development environment using docker for convenience.
Stars: ✭ 271 (+2158.33%)
Mutual labels:  development, development-environment
Cra Build Watch
A script for create-react-app that writes development builds to the disk
Stars: ✭ 110 (+816.67%)
Mutual labels:  development, development-environment
Developer Roadmap Guide 2018
Stars: ✭ 344 (+2766.67%)
Mutual labels:  development, development-environment
container
Custom containers for various usecases
Stars: ✭ 12 (+0%)
Mutual labels:  development, development-environment
wp-cli-dev
🛠 WP-CLI development environment that allows for easy development across all packages
Stars: ✭ 29 (+141.67%)
Mutual labels:  development, development-environment
Ergo
The management of multiple apps running over different ports made easy
Stars: ✭ 452 (+3666.67%)
Mutual labels:  development, development-environment
Pric
Simple zero-config tool to create Private Certificate Authority & issue locally-trusted development server certificates with any domain names you'd like. SSL certificates for development purposes.
Stars: ✭ 87 (+625%)
Mutual labels:  development, development-environment
Koding
The Simplest Way to Manage Your Entire Dev Infrastructure!
Stars: ✭ 1,945 (+16108.33%)
Mutual labels:  development, development-environment
Docker-Stack
This repo contains a simple Docker setup with minimal configuration and only few files you can drop into many PHP-based projects.
Stars: ✭ 31 (+158.33%)
Mutual labels:  development, development-environment
Docker Compose Starter
Run your development environment with a simple command using docker-compose 🚀
Stars: ✭ 159 (+1225%)
Mutual labels:  development, development-environment
multi-site-docker
A multi-site-docker configuration featuring nginx, php and mysql
Stars: ✭ 85 (+608.33%)
Mutual labels:  development, development-environment
wordless gem
The quickest CLI tool to setup a new WordPress locally. Wordless ready.
Stars: ✭ 38 (+216.67%)
Mutual labels:  development, development-environment
magento-ngrok
Magento 2 module for ngrok.io service support
Stars: ✭ 45 (+275%)
Mutual labels:  development, development-environment
rails-development-environment
Development environment for Ruby on Rails based on Vagrant, VirtualBox and Ubuntu 16.04 LTS (Xenial Xerus).
Stars: ✭ 50 (+316.67%)
Mutual labels:  development-environment
Prack
Simple and Scalable Web Server 🚀
Stars: ✭ 14 (+16.67%)
Mutual labels:  web-server
docker-compose-moodle
This project quickly builds a local workspace for Moodle (Apache2, PHP-FPM with XDEBUG y Postgres) using containers for each of its main components. The local workspace is built and managed by Docker Compose
Stars: ✭ 33 (+175%)
Mutual labels:  development
yii-dev-tool
Development environment for Yii 3 packages
Stars: ✭ 56 (+366.67%)
Mutual labels:  development
lowdb-api
⚡️ lowdb-api - Express middleware that serve a virtual RESTful API.
Stars: ✭ 27 (+125%)
Mutual labels:  development-environment
hackathon
Repositório de hackathons do Training Center
Stars: ✭ 20 (+66.67%)
Mutual labels:  development
base
base tool yamls (logging, monitoring, oauth, certificates, DNS)
Stars: ✭ 33 (+175%)
Mutual labels:  development-environment

Docker deploy

This tool lets you create a docker based environment with a micro-services architecture, enabling you to select only the services needed. It focuses on web development with some preconfigured images like Php, Redis, Nginx, Nodejs, Mysql, Mariadb, HHVM.

The idea behind this tool is to make it easy to start developing web applications. The steps are as follows

  • Create a new project based on a template
  • Set it up with an easy prompt
    • Select services
    • Configure each service
  • Dev/Test cycle locally
  • Build/Deploy to the production server
  • Enabling A/B testing
  • Rollback

Requirements

  • node ^7.0.0
  • yarn ^0.23.0 or npm ^3.0.0

Getting Started

After confirming that your development environment meets the specified requirements, you can create a new project by doing the following:

Install from source

First, clone the project:

$ git clone https://github.com/blimpair/blimp.git <cli-src>
$ cd <cli-src>

Then install dependencies and check to see it works. It is recommended that you use Yarn for deterministic installs, but npm install will work just as well.

$ yarn install    # Install project dependencies
$ npm link        # Will link the current directory to your binaries so you can use it as a global executable

Usage

Once you've completed the installation procedure, you can start using the tool.

CLI API

When running npm link the command blimp is made available globally

Create

$ blimp create <project name> # This project is created in the current working directory

What this command does is clone the main template for web development and strip it of unnecessary files. It also removes .git folder so you can init your own repo.

Once this command completes, you ought to cd to the project folder

Setup

$ blimp setup

Running setup will start a prompt asking you some questions to configure the project. First it will ask what services you want to enable. Once that is completed, it will start subsequent prompts to complete the configuration of each micro-service, diferentiating between development and production environments.

Note that these differences should be minimal. An example is the database password and username which may be more complicated in production while it can be empty in development

Running this command again after having worked on the project may result in failure when testing your project. Clean it and biuld from scratch.

Build

$ blimp build <env> # requires parameter env which is either dev or prod

Building the project for development creates a symbolic link to the services' data volumes into the project folder so you can work seamlessly. In particular your application in development will reside in <project dir>/data/ It is required to maintain that directory structure as it determines other services in some cases. Like if you use php and nginx, a folder containing the nginx configuration for the project will be made available which will be automatically loaded by nginx. The production build command will copy your application code inside the images and will build it tagging with the project version defined in config.json.

Clean

$ blimp clean

Be careful when running this command as it will delete all services and their data.

Deploy

WIP

Dependencies

  • Docker template
    • Architecture for micro-services based web development with the option to create many projects or different instances of the same one.
  • AeriaWork
    • In the case of php web development, if you create an empty project and build it, the php image will automatically initialize an AeriaWork project.

License

MIT.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].