Build with BUILD (and Docker on Windows)

Some time ago a really nice open source and collaborative design tool was presented to the world of UI/UX designers: BUILD. It can be used for Web and Mobile Apps prototyping and User Research. It eases the collection of feedback from users or customers and jumpstarts the development. OK.. so far so good. This is something that you can check on the project web site.

If you check the GitHub repository you can find an explanation how you can install it on your own machine. It is quite simple really: just install Git, npm, nodejs and mongodb and after couple of command lines you are good to go!

Well.. why am I writing this post when I am sure you have already clicked on the first link, quickly installed everything and already have your first prototype up and running? I was curious about what Docker is and how it works so I decided to install Build with Docker on my Windows machine and it didn’t work that simple so I had to invest some time looking for a solution.

The steps in the README.md are the following:

1.Install Docker Engine – worked like charm if you just follow the link and install it.

2. Create file docker-compose.yml – weeeell this is where things got a bit complicated when I realized that I need to somehow install mongodb on Docker which is not described in the README file. So I spent some time trying to find a way how to install mongo (watch out it should be version 2.6.11). So how I did this?

2.1 First I created a folder (just to have it separated) docker-mongo

folder

2.2 Created the following Dockerfile there:

# Dockerizing MongoDB: Dockerfile for building MongoDB images
# Based on ubuntu:latest, installs MongoDB following the instructions from:
# http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/

FROM ubuntu:latest
MAINTAINER Docker

# Installation:
# Import MongoDB public GPG key AND create a MongoDB list file
RUN apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv 7F0CEB10
RUN echo ‘deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen’ | sudo tee /etc/apt/sources.list.d/mongodb.list

# Update apt-get sources AND install MongoDB
RUN apt-get update
RUN apt-get install -y mongodb-org=2.6.11 mongodb-org-server=2.6.11 mongodb-org-shell=2.6.11 mongodb-org-mongos=2.6.11 mongodb-org-tools=2.6.11

# Create the MongoDB data directory
RUN mkdir -p /data/db

# Expose port #27017 from the container to the host
EXPOSE 27017

# Set /usr/bin/mongod as the dockerized entry-point application
ENTRYPOINT [“/usr/bin/mongod”]

2.3 Ran the command docker build -t XXX/mongo (where XXX can be anything you like)

2.4 Then adjusted the docker-compose.yml file so that it uses the mongodb (again change XXX here)

web:
image: sapbuild/build:0.3.3
ports:
– “9000:9000”
links:
– mongo

mongo:
image: XXX/mongo

3. Pull and start containers here (same step as in the README.md) – just run docker-compose up wait a bit here it might take a while and when you see something like: server cluster started and then you might go to step 4

compose

4. Opened  192.168.99.100:9000 and voila

voila

proto

Maybe there is an easier way and maybe I have done something wrong, but as my first experience with Docker it seemed a bit weird and I was happy to see it running.. It seems to work now and I hope it will help someone who might have trouble setting everything up.

Since I am interested in how it jumstarts development and now have to find out how I can later import the projects in SAP Web IDE. But that is a next open issue that I have to solve…

Cheers and happy prototyping!

 

Leave a comment