Giter VIP home page Giter VIP logo

earth-analytics-python-env's Introduction

earth-analytics-environment

Build Status AppVeyor build status DOI Binder Docker Cloud Build Status

Welcome to the Earth Analytics Environment Repository! Here you will find a conda envt that can be installed on your computer using a .yaml file. You will also find a docker image that can be used to actually run the environment in a containerized environment.

Contributors:

  • Leah A. Wasser
  • Tim Head
  • Chris Holdgraf
  • Max Joseph
  • Martha Morrissey

Getting started with the Conda Environment

1. Install the Earth Lab Conda Environment on your Local Computer.

To begin, install git and conda for Python 3.x (we suggest 3.6).

Installing git: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git

Installing conda: https://www.anaconda.com/

We recommend installing geo-related dependencies with conda-forge. We have created a custom yaml list with all of the dependencies that you will need to run the lessons in this course. Follow these steps below to get your environment ready.

About Conda Environments: https://conda.io/docs/user-guide/tasks/manage-environments.html

An environment for conda has been created specifically for this course. To load it, run:

conda env create -f environment.yml

  • Note that it takes a bit of time to run this setup
  • Also note that for the code above to work, you need to be in the directory where the environment.yml file lives (ex: cd earth-analytics-python-env).

To update this environment from a yaml file use: conda env update -f environment.yml

To manage your conda environments, use the following commands:

View envs installed

conda info --envs

Activate the environment that you'd like to use

Conda 4.6 and later versions (all operating systems):

conda activate earth-analytics-python

Conda versions prior to 4.6:

On Mac or Linux:

source activate earth-analytics-python

On Windows:

activate earth-analytics-python

The environment name is earth-analytics-python as defined in the environment.yml file.

Docker Build

Docker Automated build

To run a docker container you need to do the following:

  1. Install docker and make sure it is running.

  2. Build the docker image on your compute locally. Be patient - this will take a bit of time. Run the following lines to build the docker image locally:

cd earth-analytics-python-env
docker build -t earthlab/earth-analytics-python-env .
docker run -it -p 8888:8888 earthlab/earth-analytics-python-env

  1. Run the image.

To run your earth-analytics image, use the following code:

docker run --hostname localhost -it -p 8888:8888 earthlab/earth-analytics-python-env

NOTE: earthlab/earth-analytics-python-env is the name of this image as built above. To view all images on your computer, type docker images --all

One you run your image, you will be given a URL at the command line. Paste that puppy into your browser to run jupyter with the earth analytics environment installed!!

Updating the Earth Analytics Environment

If you wish to update the earth analytics environment, do the following.

  1. make a PR with changes to master
  2. think about your changes - don't do silly things or break things :)
  3. merge the PR into the master branch
  4. Check & wait till Dockerhub has built the image for the merging of the PR you can see builds in progress, here
  5. Finally, once the build is complete you can then you can update hub-ops repo with the newly tagged image.

Important Notes

If the update the earthpy package, you must specify the commit number that you wish to build earthpy against. This will ensure that the docker image automagically rebuilds using the latest version of earthpy

like this: - git+https://github.com/earthlab/earthpy.git@283683affac9e46b1690c7913ebd2621c82ba43a

This PR should kick off a rebuild of the docker image. But that docker image will not be usable until it's built off of the master branch.

NOTE 2: The DockerHub build actually takes forever and ever. So it's best to check out the build status rather than assuming it's built.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.