-
Clone this repository - this is where we'll be doing our work
-
Ensure docker is installed and configured properly
-
Pull the docker image
docker pull leonardoborges/elmworkshop
-
Run the container
docker run --net=host -v $PWD:/elm-workshop -w /elm-docs leonardoborges/elmworkshop
This will setup a new docker container exposing two ports: 3000 and 8000
http://$CONTAINER_IP:8000/
- Has elm-reactor running with a sample Hello.elm file. Click on it and try it outhttp://$CONTAINER_IP:3000/
- Has offline docs for Elm's core libraries
Theoretically once you have this setup, you shouldn't need internet connection anymore. Let me know if you find issues.
You need to to setup boot2docker before you can setup docker.
Additionally, under windows and mac environments, the container has limited access to your filesystem so make sure to clone this project somewhere in your home directory.
On Mac OS X you can install docker
and boot2docker
using homebrew:
brew install docker boot2docker
boot2docker init
boot2docker start
In order access the applications on ports 3000 and 8000 on the host system, you will need to port forward ports 3000 and 8000 through VirtualBox from the boot2docker image to the host system.
Go to VirtualBox > boot2docker-vm > Settings > Network > Port Forwarding and add the following rules:
- Protocol:TCP, Host Ip:127.0.0.1, Host Port:3000, Guest Port:3000
- Protocol:TCP, Host Ip:127.0.0.1, Host Port:8000, Guest Port:8000
Then continue the setup as described above.
Mac and Windows have binaries here. For Linux you will need to build from source so I highly recommend using the docker setup described above.
Regardless of operating system however, the docker image also includes offline documentation which is desired for a workshop as internet access is limited.
If you choose this path, be aware you might not be able to access the docs during the workshop, unless you can use some form of tethering.