This is the easiest way to get started with DMPRoadmap, as it sets up and deploys a (largely) platform-agnostic and totally sandboxed development environment based on:
- Docker / Vagrant / Puppet
- CentOS 7 / nginx / MySQL (MariaDB) / Ruby on Rails
It uses Vagrant to deploy two Docker containers, one for the database and the other for the Rails app.
- Docker
- Linux: Docker v1.12.6+
- Mac OSX: Docker for Mac
- Windows: Docker for Windows (untested)
- Vagrant
-
Clone this configuration repository:
git clone https://github.com/DMPRoadmap/roadmap-devenv.git
-
Enter your local copy:
cd roadmap-devenv
-
Configure Docker networking that the two containers will use:
docker network create -d bridge --ip-range=172.18.0.0/24 \ --subnet=172.18.0.0/24 --gateway=172.18.0.254 \ dmpbridge
-
Create the two containers (this should only take a few minutes):
vagrant up
-
Your DMPRoadmap development instance is up and running! You can now:
- Open the running instance with your web browser at:
- http://[your_hostname]:8080/ (also visible from your network)
- http://localhost:8080/ (only visible locally)
- Log into either container:
vagrant ssh db vagrant ssh dev
- Find the source code on your host machine (e.g. to edit locally with an IDE) in the shared folder:
which appears inside the
roadmap-devenv/src/dmproadmap.git/
dev
container as:/opt/src/dmproadmap.git/
- Open the running instance with your web browser at:
-
You can customize the fork/branch to check out for deployment in the last two lines of Puppet manifest
gitclone.pp
:vcsrepo { '/opt/src/dmproadmap.git': ensure => latest, owner => vagrant, group => source, provider => git, user => vagrant, require => Package['git'], source => 'https://github.com/DMPRoadmap/roadmap.git', revision => 'development', }