Skip to content

Commit 35f66e3

Browse files
committed
finish!
1 parent feb51ad commit 35f66e3

File tree

2 files changed

+35
-28
lines changed

2 files changed

+35
-28
lines changed

README.Rmd

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ output: github_document
66

77
### Beta release June 1, 2024.
88

9-
These are a collection of container images that provide standardized environments for Python and R with Jupyter Lab, RStudio and VS Code IDEs. The images are built off the [Rocker](https://rocker-project.org/images/devcontainer/images.html), [Pangeo](https://github.com/pangeo-data/pangeo-docker-images) and [Jupyter](https://jupyter-docker-stacks.readthedocs.io/en/latest/) base images. This repo holds the stable Docker stack for specific pipelines used in Fisheries. The images are designed to work out-of-box and identically in Jupyter Hubs, Codespaces, Binder, etc.Read the Design section below on what the NMFS Open Sci Docker Stack does. For use, see [Instructions](#instructions) and [Link to files](#files).
9+
These are a collection of container images that provide standardized environments for Python and R with Jupyter Lab, RStudio and VS Code IDEs. The images are built off the [Rocker](https://rocker-project.org/images/devcontainer/images.html), [Pangeo](https://github.com/pangeo-data/pangeo-docker-images) and [Jupyter](https://jupyter-docker-stacks.readthedocs.io/en/latest/) base images. This repo holds the stable Docker stack for specific pipelines used in Fisheries. The images are designed to work out-of-box and identically in Jupyter Hubs, Codespaces, Binder, etc.Read the Design section below on what the NMFS Open Sci Docker Stack does. For use, see [Instructions](#instructions) and [Link to files](#files). This Docker Stack was the joint of a number of people. See [Acknowledgements](#thanks).
1010

1111
## Stable set of images
1212

@@ -53,17 +53,16 @@ for(i in imgs) table_line(i)
5353
The images are designed to be deployable "out of the box" from JupyterHubs, Codespaces, GitPod, Colab, Binder, and on your computer via Docker or Podman with no modification. See instructions below. Each will spin up Jupyter Lab with Jupyter Lab (and Notebook), RStudio and VS Code with the specific development environment.
5454

5555
- Python environment follows Pangeo images with micromamba installed as the solver and base and notebook environments. The Jupyter modules are installed in notebook conda environment and images will launch with the notebook environment activated, again following Pangeo design structure. Images that use Pangeo as base will have user jovyan and user home directory home/jovyan.
56-
- Images with R ONLY follow Rocker's environment design with the exception that the user home directory is home/jovyan so it plays nice with JupyterHub deployments. The user is rstudio however.
57-
- When an image contains both R and Python, the base image is rocker and micromamba is installed along with the Pangeo environment structure. RStudio will use the Python environment in the notebook conda environment when Python is used from within RStudio.
56+
- When an image contains both R and Python, the base image is a rocker image and adheres to the rocker norms for R and RStudio environment design. For the Python side of these images, micromamba is installed and the Pangeo conda environment structure is applied as in the Python only images. RStudio will use the Python environment in the conda notebook environment when Python is used from within RStudio. The user is `rstudio` but the home directory is `home/jovyan` so images play nice with standard JupyterHub deployments with persistent memory.
5857
- These images are not terribly light-weight (they are large). Use the original Jupyter, Pangeo or Rocker images if you are looking for lightweight data science images.
5958

6059
## Why use a container?
6160

6261
The main reason is that geospatial, bioinformatics, and TMB/INLA environments can be hard to get working right. Using a Docker image means you use a stable environment. Watch this video from Yuvi Panda (Jupyter Project) [video](https://www.youtube.com/watch?v=qgLPpULvBbQ) and read about the Rocker Project in the R Project Journal [article](https://journal.r-project.org/archive/2017/RJ-2017-065/RJ-2017-065.pdf) by Carl Boettiger and Dirk Eddelbuettel.
6362

64-
### Acknowledgements
63+
### <a name="thanks">Acknowledgements
6564

66-
The core stack is credited to the work of Luis Lopez (NASA) who developed the NASA Openscapes Python image used in countless workshops on cloud-computing with NASA Earth Data. Subsequently the NASA Openscapes mentor cloud-infrastructure Slack group and weekly co-work sessions plugged away at the problem of helping users 'fledge' off the Openscapes JupyterHub, which involved creating images that were more versitile. Carl Boettiger (UC Berkeley & Rocker Project) and Eli Holmes (NOAA Fisheries) took on different aspects of this. The GitHub Action tooling is curtesy of Carl. Yuvi Panda (Jupyter, 2i2c) was also very helpful in desiging the 'scaffolding' in the images that helps them be robust and versitile. The Codespaces and devcontainer code is based on Michael Akridge's [Open Science Codespaces](https://github.com/MichaelAkridge-NOAA/Open-Science-Codespaces) work. Individual images have different core developers: Tim Haverland (arcgis), Sunny Hospital (coastwatch), Luke Thompson (aomlomics).
65+
The motivation of the Docker Stack was the success of the NASA Openscapes "corn" image developed by Luis Lopez (NASA) and used in countless workshops on cloud-computing with NASA Earth Data. Subsequently the NASA Openscapes mentor cloud-infrastructure Slack group met during weekly co-work sessions and plugged away at the problem of helping users 'fledge' off the Openscapes JupyterHub, which involved creating images that could be used outside of JupyterHubs, and updating the original "py-rocket" R image created by Luis. Carl Boettiger (UC Berkeley & Rocker Project) and Eli Holmes (NOAA Fisheries) took on different aspects of this work. The GitHub Action tooling is curtesy of Carl. "py-rocket-base" is derived from Carl's "version 2.conda" of py-rocket. Eli further developed py-rocket into the form in this repo to bring it closer to the "corn" and Pangeo designs. Yuvi Panda (Jupyter, 2i2c) was instrumental in helping sort through so many mystery bugs. The Codespaces and devcontainer code is based on Michael Akridge's [Open Science Codespaces](https://github.com/MichaelAkridge-NOAA/Open-Science-Codespaces) work. Individual images have different core developers: Tim Haverland (arcgis), Sunny Hospital (coastwatch), Luke Thompson (aomlomics-jh), Eli Holmes (the various py-rocket versions).
6766

6867

6968
## License information

README.md

Lines changed: 31 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ images. This repo holds the stable Docker stack for specific pipelines
1515
used in Fisheries. The images are designed to work out-of-box and
1616
identically in Jupyter Hubs, Codespaces, Binder, etc.Read the Design
1717
section below on what the NMFS Open Sci Docker Stack does. For use, see
18-
[Instructions](#instructions) and [Link to files](#files).
18+
[Instructions](#instructions) and [Link to files](#files). This Docker
19+
Stack was the joint of a number of people. See
20+
[Acknowledgements](#thanks).
1921

2022
## Stable set of images
2123

@@ -54,13 +56,14 @@ with the specific development environment.
5456
the notebook environment activated, again following Pangeo design
5557
structure. Images that use Pangeo as base will have user jovyan and
5658
user home directory home/jovyan.
57-
- Images with R ONLY follow Rocker’s environment design with the
58-
exception that the user home directory is home/jovyan so it plays nice
59-
with JupyterHub deployments. The user is rstudio however.
60-
- When an image contains both R and Python, the base image is rocker and
61-
micromamba is installed along with the Pangeo environment structure.
62-
RStudio will use the Python environment in the notebook conda
63-
environment when Python is used from within RStudio.
59+
- When an image contains both R and Python, the base image is a rocker
60+
image and adheres to the rocker norms for R and RStudio environment
61+
design. For the Python side of these images, micromamba is installed
62+
and the Pangeo conda environment structure is applied as in the Python
63+
only images. RStudio will use the Python environment in the conda
64+
notebook environment when Python is used from within RStudio. The user
65+
is `rstudio` but the home directory is `home/jovyan` so images play
66+
nice with standard JupyterHub deployments with persistent memory.
6467
- These images are not terribly light-weight (they are large). Use the
6568
original Jupyter, Pangeo or Rocker images if you are looking for
6669
lightweight data science images.
@@ -75,23 +78,28 @@ and read about the Rocker Project in the R Project Journal
7578
[article](https://journal.r-project.org/archive/2017/RJ-2017-065/RJ-2017-065.pdf)
7679
by Carl Boettiger and Dirk Eddelbuettel.
7780

78-
### Acknowledgements
79-
80-
The core stack is credited to the work of Luis Lopez (NASA) who
81-
developed the NASA Openscapes Python image used in countless workshops
82-
on cloud-computing with NASA Earth Data. Subsequently the NASA
83-
Openscapes mentor cloud-infrastructure Slack group and weekly co-work
84-
sessions plugged away at the problem of helping users ‘fledge’ off the
85-
Openscapes JupyterHub, which involved creating images that were more
86-
versitile. Carl Boettiger (UC Berkeley & Rocker Project) and Eli Holmes
87-
(NOAA Fisheries) took on different aspects of this. The GitHub Action
88-
tooling is curtesy of Carl. Yuvi Panda (Jupyter, 2i2c) was also very
89-
helpful in desiging the ‘scaffolding’ in the images that helps them be
90-
robust and versitile. The Codespaces and devcontainer code is based on
91-
Michael Akridge’s [Open Science
81+
### <a name="thanks">Acknowledgements
82+
83+
The motivation of the Docker Stack was the success of the NASA
84+
Openscapes “corn” image developed by Luis Lopez (NASA) and used in
85+
countless workshops on cloud-computing with NASA Earth Data.
86+
Subsequently the NASA Openscapes mentor cloud-infrastructure Slack group
87+
met during weekly co-work sessions and plugged away at the problem of
88+
helping users ‘fledge’ off the Openscapes JupyterHub, which involved
89+
creating images that could be used outside of JupyterHubs, and updating
90+
the original “py-rocket” R image created by Luis. Carl Boettiger (UC
91+
Berkeley & Rocker Project) and Eli Holmes (NOAA Fisheries) took on
92+
different aspects of this work. The GitHub Action tooling is curtesy of
93+
Carl. “py-rocket-base” is derived from Carl’s “version 2.conda” of
94+
py-rocket. Eli further developed py-rocket into the form in this repo to
95+
bring it closer to the “corn” and Pangeo designs. Yuvi Panda (Jupyter,
96+
2i2c) was instrumental in helping sort through so many mystery bugs. The
97+
Codespaces and devcontainer code is based on Michael Akridge’s [Open
98+
Science
9299
Codespaces](https://github.com/MichaelAkridge-NOAA/Open-Science-Codespaces)
93100
work. Individual images have different core developers: Tim Haverland
94-
(arcgis), Sunny Hospital (coastwatch), Luke Thompson (aomlomics).
101+
(arcgis), Sunny Hospital (coastwatch), Luke Thompson (aomlomics-jh), Eli
102+
Holmes (the various py-rocket versions).
95103

96104
## License information
97105

0 commit comments

Comments
 (0)