/wdln-docker

Docker environment for WDLN work.

Primary LanguageJavaScript

== Wildfire-DLN Base Station Image ==

=== Requirements ===
  * Docker environment with external network connectivity

=== Quick Start ===

Within this directory, run:

 > ./wdln_setup.sh
 > ./wdln_run.sh

wdln_setup will take some time to run (~15 minutes). wdln_run will start a base
station and two ferries.  If you need to rebuild an image from scratch (e.g., if
git repository dependencies change or the image needs a fundamental rework, add
`--no-cache` after a docker build command.

To list running containers:
 > docker ps      # to list images

To list all containers, running and exited:
 > docker ps -a

To run a fresh instance of a container (not restarting a stopped container):
 > docker run -ti "wdln-base" /bin/bash
or
 > docker run -ti "wdln-ferry" /bin/bash
 
To start a stopped container:
 > docker start <name or container ID>

To attach to a running container:
 > docker attach <name or container ID>  # e.g. "wdln-base"
 Ctrl-P Ctrl-Q to detach

To open an interactive shell in an already running your container:

 > docker exec -ti "wdln-base" /bin/bash
or
 > docker exec -ti "wdln-ferry" /bin/bash

To stop a running container:
 > docker stop <container id>
or
 > ./wdln_stop.sh

To preserve an image of a container, including data:
 > docker commit <container id> "<optional name>":"<optional tag>"

=== Warning for Windows users ===

Installation of Docker for Windows requires enabling Hyper-V, which disables VirtualBox and VMware. 
It is preferable to install on a Linux VM, as shown in the following tutorial:
https://www.linux.com/learn/intro-to-linux/2017/11/how-install-and-use-docker-linux
You needn't follow it after reaching the Pulling Images section. Run the scripts as above.