README.md
repo2docker
repo2docker
fetches a git repository and builds a container image based on
the configuration files found in the repository.
See the repo2docker documentation for more information on using repo2docker.
For support questions please search or post to https://discourse.jupyter.org/c/binder.
See the contributing guide for information on contributing to repo2docker.
See our roadmap to learn about where the project is heading.
Using repo2docker
Prerequisites
- Docker to build & run the repositories. The community edition is recommended.
- Python 3.5+.
Supported on Linux and macOS. See documentation note about Windows support.
Installation
This a quick guide to installing repo2docker
, see our documentation for a full guide.
To install from PyPI:
pip install jupyter-repo2docker
To install from source:
git clone https://github.com/jupyter/repo2docker.git
cd repo2docker
pip install -e .
Usage
The core feature of repo2docker is to fetch a git repository (from GitHub or locally), build a container image based on the specifications found in the repository & optionally launch the container that you can use to explore the repository.
Note that Docker needs to be running on your machine for this to work.
Example:
jupyter-repo2docker https://github.com/norvig/pytudes
After building (it might take a while!), it should output in your terminal something like:
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
http://0.0.0.0:36511/?token=f94f8fabb92e22f5bfab116c382b4707fc2cade56ad1ace0
If you copy paste that URL into your browser you will see a Jupyter Notebook with the contents of the repository you had just built!
For more information on how to use repo2docker
, see the
usage guide.
Repository specifications
Repo2Docker looks for configuration files in the source repository to
determine how the Docker image should be built. For a list of the configuration
files that repo2docker
can use, see the
complete list of configuration files.
The philosophy of repo2docker is inspired by Heroku Build Packs.