This docker is built from developmentseed/geolambda image which includes libraries and their dependencies for geospatial processing, such as numpy and gdal.
In addition to the libraries provided by geolambda, geo-ml-docker includes libraries for machine learning such as tensorflow and keras. See all included libraries in requirements.
docker build -t geo-ml-docker .
docker run -it geo-ml-docker /bin/bash
Run a jupyter notebook in a new container, expose the port, and mount a volume. Note - this mounts a volume in the current directory so it should be run in the directory where any required files are maintained.
docker run -it -v ${PWD}:/code -p 8888:8888 geo-ml-docker /bin/bash -c "jupyter notebook --debug --ip=* --port=8888 --no-browser --allow-root"
Follow the AWS's instruction to install Docker on the EC2 machine before you go ahead.
ssh to the EC2 with your pem, and build the docker image.
docker build -t geo-ml-docker .
docker run -v ${PWD}:/code -it -p 8888:8888 geo-ml-docker /bin/bash -c "jupyter notebook --debug --ip=* --port=8888 --no-browser --allow-root"
In another terminal ssh to cloud machine.
ssh -i Your_AWS.pem -L 8888:localhost:8888 [email protected]
When you run the notebook the first time, copy and pasted something like http://127.0.0.1::8888/?token=xxxxxx
to your browser to open the notebook.