Docker Lab (Learn Docker), this repository inspired from Docker Alpine.
Dynamic environments for:
- MariaDB
- MongoDB
- Nginx
- NodeJS
- PostgreSQL
- Python
- Ruby
- Vim
- Application (Workspace for Vim, Python, NodeJS & Ruby)
- bash (+ themes)
- oh-my-zsh (+ themes)
- tmux (+ themes)
- vim (+ plugins with vundle & themes)
- rbenv / rvm
- gem test unit (rspec, serverspec)
- gem docker-api
- gem sqlite3, mongoid, sequel, apktools
- gem mysql2 (run: yum install -y mysql-devel)
- gem pg, sequel_pg (run: yum install -y postgresql-libs postgresql-devel)
- gem rubocop
- others
- npm
- npm test unit (ChaiJS, TV4, Newman)
- js package manager
- yarn
- bower
- grunt
- gulp
- yeoman
- Run vim then
:PluginInstall - Update plugin vim (vundle)
:PluginUpdate - Via terminal
vim +PluginInstall +q vim +PluginUpdate +q
- Path Gemfile
$HOME/Gemfile $HOME/Gemfile.lock - Gem Installation
./tmp/gems.sh - Different User Installation
/bin/sh $HOME/gems.sh
- Build Containers
./build_all.sh - Running Containers (Single Containers Only)
./run_nginx.sh ./run_mariadb.sh ./run_postgresql.sh
- Copy
env-exampleto.env - Copy
docker-compose.skeleton.ymltodocker-compose.yml - Build & running
docker-compose build && docker-compose up - Force recreate container
docker-compose build && docker-compose up --force-recreate - Force recreate some containers only
docker-compose build && docker-compose up --force-recreate mariadb mongodb nginx nodejs postgresql redis ruby application - Running container only
docker-compose up - Running some containers only
docker-compose up mariadb mongodb nginx nodejs postgresql redis ruby application
You can run docker-compose for different environment with selected containers
- Copy
env.sh.exampletoenv.sh - Change to execute script
chmod a+x env.sh - Change environment in
env.shfileENV="development" # (use: "development" or "production" as selected environment) CONTAINER_PRODUCTION="..." # (selected containers will be run in production environment) CONTAINER_DEVELOPMENT="..." # (selected containers will be run in development environment) - Running script
./env.sh

