Skip to content

Commit

Permalink
Modify OpenSARlab to OpenSARLab
Browse files Browse the repository at this point in the history
  • Loading branch information
teresa-fitzmayer committed Jul 15, 2024
1 parent 2f3c296 commit 379a013
Show file tree
Hide file tree
Showing 18 changed files with 75 additions and 75 deletions.
2 changes: 1 addition & 1 deletion docs/CNAME
Original file line number Diff line number Diff line change
@@ -1 +1 @@
opensarlab-docs.asf.alaska.edu
OpenSARLab-docs.asf.alaska.edu
6 changes: 3 additions & 3 deletions docs/dev-guides/conda_environments.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[Return to Developer Guide](../dev.md)

# There are a few options for creating conda environments in OpenSARlab.
# There are a few options for creating conda environments in OpenSARLab.
Each option come with benefits and drawbacks.

---
Expand All @@ -25,7 +25,7 @@ Each option come with benefits and drawbacks.
- Environments are synced, not copied, so changes made by users will persist across server restarts

### Drawbacks
- Increases the time it takes to start an OpenSARlab server
- Increases the time it takes to start an OpenSARLab server
- Syncing environments from the docker image to `$HOME/.local`, registering their kernels, and running any needed setup scripts all happens at server startup
- Large environments may overrun the 20GB root volume mounted on each EC2 instance, requiring that larger, more expensive root volumes be used.
- By storing the environment on both user volumes and EC2 node volumes, you effectively double pay for that storage.
Expand All @@ -41,4 +41,4 @@ Each option come with benefits and drawbacks.
### Drawbacks
- Users have to create their own conda environments
- This requires some knowledge of conda and takes time.
- Note: There is an [ASF notebook repo](https://github.com/ASFOpenSARlab/opensarlab-envs) to aid users in building their own environments.
- Note: There is an [ASF notebook repo](https://github.com/ASFOpenSARLab/OpenSARLab-envs) to aid users in building their own environments.
14 changes: 7 additions & 7 deletions docs/dev-guides/deploy_OpenSARlab.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
[Return to Developer Guide](../dev.md)

Deploy OpenSARlab to an AWS account
Deploy OpenSARLab to an AWS account
=====================

**A note about deployments:** A deployment of OpenSARlab refers to a standalone instance of OpenSARlab.
If you are setting up OpenSARlab for several classes and/or collaborative groups with disparate needs or funding sources,
**A note about deployments:** A deployment of OpenSARLab refers to a standalone instance of OpenSARLab.
If you are setting up OpenSARLab for several classes and/or collaborative groups with disparate needs or funding sources,
it may be useful to give them each their own standalone deployment. This separates user group authentication,
simplifies billing for each group, and allows for easy cleanup at the end of a project or class (just delete the deployment).
In the following instructions, replace any occurrence of "`deployment_name`" with the deployment name you have chosen.
Expand All @@ -15,7 +15,7 @@ generate part of the Cognito callback URL and CloudFormation stack names also fo
Take AWS SES out of sandbox
--------------------

**The AWS Simple Email Service is used by OpenSARlab to send emails to users and administrators. These include
**The AWS Simple Email Service is used by OpenSARLab to send emails to users and administrators. These include
authentication related notifications and storage lifecycle management messages.**

While SES is in sandbox, you are limited to sending 1 email per second with no more than 200 in a 24 hour period, and they
Expand Down Expand Up @@ -78,21 +78,21 @@ formatted calendar should work as well**

Store your CA certificate
--------------------
**OpenSARlab will lack full functionality if not using https (SSL certification)**
**OpenSARLab will lack full functionality if not using https (SSL certification)**

1. Follow these [instructions](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) to import your CA certificate into the AWS Certificate Manager

Prepare CodeCommit Repos
--------------------
TODO Do this differently

**All the public OpenSARlab repos are in the [ASFOpenSARlab](https://github.com/ASFOpenSARlab) Github Org**
**All the public OpenSARLab repos are in the [ASFOpenSARLab](https://github.com/ASFOpenSARLab) Github Org**

1. Create a `deployment_name`-container CodeCommit repo in your AWS account
1. Create a `deployment_name`-cluster CodeCommit repo
1. Clone the `deployment_name`-container and `deployment_name`-cluster repos to your local computer using ssh
1. cd into your local `deployment_name`-container repo
1. add ASFOpenSARlab/opensarlab-container as a remote on your local `deployment_name`-container repo
1. add ASFOpenSARLab/opensarlab-container as a remote on your local `deployment_name`-container repo
1. `git remote add github https://github.com/ASFOpenSARlab/opensarlab-container.git`
1. Pull the remote opensarlab-container repo into your local `deployment_name`-container repo
1. `git pull github main`
Expand Down
8 changes: 4 additions & 4 deletions docs/dev-guides/mintpy_conda.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Build latest mintpy and push to custom OpenSARlab conda channel
# Build latest mintpy and push to custom OpenSARLab conda channel

Sometimes the latest version of MintPy is desired within a notebook but the official release is not current. These instructions will show how to build MintPy and push to a custom conda channel.

_This assumes that the user has an Anaconda.org account and that this account is attached to a `opensarlab` conda channel. Instructions on how to do this are not provided here._
_This assumes that the user has an Anaconda.org account and that this account is attached to a `OpenSARLab` conda channel. Instructions on how to do this are not provided here._


A. Create working directory
Expand Down Expand Up @@ -77,10 +77,10 @@ cd ..
I. After a successful build, check for artifacts in `mintpy-feedstock/build_artifacts/`


J. Push changes to OpenSARlab conda channel.
J. Push changes to OpenSARLab conda channel.

```bash
# Login to individual account where you are an owner of OpenSARlab org
# Login to individual account where you are an owner of OpenSARLab org
anaconda login

# Upload artifacts
Expand Down
2 changes: 1 addition & 1 deletion docs/dev-guides/notifications.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[Return to Developer Guide](../dev.md)

# Create OpenSARlab Notifications
# Create OpenSARLab Notifications

1. Create a new event in your notification calendar
1. The event title corresponds to the notification title
Expand Down
4 changes: 2 additions & 2 deletions docs/dev-guides/system_diagram.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[Return to Table of Contents](../dev.md)

# OpenSARlab System Diagram
# OpenSARLab System Diagram

![OpenSARlab system diagram June 2021](../assets/system_diagrams/OpenSARlab_system_diagram_June_2021.png)
![OpenSARLab system diagram June 2021](../assets/system_diagrams/OpenSARLab_system_diagram_June_2021.png)
6 changes: 3 additions & 3 deletions docs/dev.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
1. [System Diagram](assets/system_diagrams/OpenSARlab_system_diagram_June_2021.png)
1. [Deploy OpenSARlab to AWS](dev-guides/deploy_OpenSARlab.md)
1. [System Diagram](assets/system_diagrams/OpenSARLab_system_diagram_June_2021.png)
1. [Deploy OpenSARLab to AWS](dev-guides/deploy_OpenSARLab.md)
1. [Conda Environment Options](dev-guides/conda_environments.md)
1. [OpenSARlab Notifications](dev-guides/notifications.md)
1. [OpenSARLab Notifications](dev-guides/notifications.md)
1. [Troubleshooting](dev-guides/troubleshooting.md)
1. [Custom Mintpy Conda Build Instructions](dev-guides/mintpy_conda.md)
28 changes: 14 additions & 14 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
# Welcome to OpenSARlab
# Welcome to OpenSARLab

## What is OpenSARlab?
## What is OpenSARLab?

OpenSARlab is a service providing users persistent, cloud-based, customizable computing environments. Groups of scientists and students have access to identical environments, containing the same software, running on the same hardware. It operates in the cloud, which means anyone with a moderately reliable internet connection can access their development environment. OpenSARlab sits alongside ASF's data archives in AWS, allowing for low latency transfer of large data products.
OpenSARLab is a service providing users persistent, cloud-based, customizable computing environments. Groups of scientists and students have access to identical environments, containing the same software, running on the same hardware. It operates in the cloud, which means anyone with a moderately reliable internet connection can access their development environment. OpenSARLab sits alongside ASF's data archives in AWS, allowing for low latency transfer of large data products.

OpenSARlab is a deployable service that creates an autoscaling Kubernetes cluster in Amazon AWS, running JupyterHub. Users have access to customizable environments running JupyterLab via authenticated accounts with persistent storage.
OpenSARLab is a deployable service that creates an autoscaling Kubernetes cluster in Amazon AWS, running JupyterHub. Users have access to customizable environments running JupyterLab via authenticated accounts with persistent storage.

While OpenSARlab was designed with SAR data science in mind, it is not limited to this field. Any group
While OpenSARLab was designed with SAR data science in mind, it is not limited to this field. Any group
development scenario involving large datasets and/or the need for complicated development environments
can benefit from working in an OpenSARlab deployment.
can benefit from working in an OpenSARLab deployment.

[Sign in or create an account to try OpenSARLab](https://opensarlab.asf.alaska.edu/hub/login)

## How will OpenSARlab benefit my work as a SAR scientist?
OpenSARlab addresses the following issues that often arise when developing SAR data science techniques, especially in
## How will OpenSARLab benefit my work as a SAR scientist?
OpenSARLab addresses the following issues that often arise when developing SAR data science techniques, especially in
a collaborative setting:

* Most SAR analysis algorithms require the installation of many interdependent Python science packages
Expand All @@ -22,15 +22,15 @@ OpenSARlab addresses the following issues that often arise when developing SAR d
* SAR data products are often quite large, which leads to slow, expensive data transfers
* SAR scientists with limited resources may lack access to the hardware required for analysis

## How will OpenSARlab benefit the class or training I am planning?
OpenSARlab alleviates some of the pitfalls commonly encountered when teaching software development and data science in any field:
## How will OpenSARLab benefit the class or training I am planning?
OpenSARLab alleviates some of the pitfalls commonly encountered when teaching software development and data science in any field:

* Teaching is often interrupted when students work in varying environments, requiring valuable instructor time to help set up their systems so they may complete their assignments.
* Students may lack the hardware needed to run the software required for assignments.
* Students may lack the bandwidth needed to download large data products to their local computers.


## How is OpenSARlab different from Binder?
## How is OpenSARLab different from Binder?

- Authenticated user accounts
- User group management
Expand All @@ -40,13 +40,13 @@ OpenSARlab alleviates some of the pitfalls commonly encountered when teaching so
- Deployable to other AWS accounts
- Developer defined server timeouts (not restricted to 10 minutes of inactivity)

## How to Access OpenSARlab
## How to Access OpenSARLab

### As a Paid Service Managed by Alaska Satellite Facility Enterprise

Contact ASF-E (<[email protected]>) to discuss options for setting up an OpenSARlab deployment to suit your needs.
Contact ASF-E (<[email protected]>) to discuss options for setting up an OpenSARLab deployment to suit your needs.

### Deploy OpenSARlab to Your Own AWS Account _(Coming Soon)_
### Deploy OpenSARLab to Your Own AWS Account _(Coming Soon)_

Take our publicly accessible codebase and create your own, self-managed deployments in Amazon AWS.

Expand Down
2 changes: 1 addition & 1 deletion docs/release-notes/release_02-2022.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Welcome to the February 2022 OpenSARlab Update!
# Welcome to the February 2022 OpenSARLab Update!

### Changes:
- Ubuntu 20.04.3 LTS
Expand Down
2 changes: 1 addition & 1 deletion docs/user-guides/OpenSARlab_terminal.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[Return to Table of Contents](../user.md)

# **Using the Terminal in OpenSARlab**
# **Using the Terminal in OpenSARLab**

## Overview
---
Expand Down
4 changes: 2 additions & 2 deletions docs/user-guides/class_notebooks_best_practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

## Provide a Conda Environment Capable of Running the Notebooks

- Provide students with a conda environment that has everything they need. [Conda Environments in OpenSARlab.](conda_environments.md)
- Provide students with a conda environment that has everything they need. [Conda Environments in OpenSARLab.](conda_environments.md)

- Students can mimic instructor's environment by:

Expand Down Expand Up @@ -34,7 +34,7 @@
## Keep your Conda Environment Up to Date

- Libraries and packages installed in your conda environment will be updated over time. If you are using a conda environment that was used in a previous class or training, try re-creating it first to confirm that it still builds without any conflicts.
- You can use the [Create_OSL_Conda_Environments notebook](https://github.com/ASFOpenSARlab/opensarlab-envs/blob/main/Create_OSL_Conda_Environments.ipynb) in OpenSARlab to create them, which is located in the `/home/jovyan/conda_environments/` directory.
- You can use the [Create_OSL_Conda_Environments notebook](https://github.com/ASFOpenSARLab/opensarlab-envs/blob/main/Create_OSL_Conda_Environments.ipynb) in OpenSARLab to create them, which is located in the `/home/jovyan/conda_environments/` directory.

---

Expand Down
4 changes: 2 additions & 2 deletions docs/user-guides/conda_environments.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[Return to Table of Contents](../user.md)

# Creating and Using Conda Environments in OpenSARlab
# Creating and Using Conda Environments in OpenSARLab

OpenScienceLab comes with a default `base` conda environment with a minimum amount of software installed. Users must create their own conda environments to run Jupyter Notebooks or Python scripts.

Expand All @@ -26,7 +26,7 @@ Your environment will be ready after running the last cell.

**NB**: It may take a while to generate your conda environment.

<!-- Users can also create their own custom conda environments in OpenSARlab and use them to run Jupyter Notebooks. Use the notebook located here to complete the process: `/home/jovyan/opensarlab_docs/OpenSARlab_supplements/Jupyter_Conda_Environments.ipynb` -->
<!-- Users can also create their own custom conda environments in OpenSARLab and use them to run Jupyter Notebooks. Use the notebook located here to complete the process: `/home/jovyan/opensarlab_docs/OpenSARLab_supplements/Jupyter_Conda_Environments.ipynb` -->

<!-- conda env create -f environment.yml
Expand Down
4 changes: 2 additions & 2 deletions docs/user-guides/git_in_OpenSARlab.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,15 @@

- [Git](https://git-scm.com/about) - Version control systems that allow you to track changes to your files.
- [ASF's Jupyter Notebook](https://github.com/asfadmin/asf-jupyter-notebooks) - A collection of Jupyter Notebooks used in OpenSARLab.
- [Terminal](./OpenSARlab_terminal.md) - A built-in terminal within OpenScienceLab. The user should also have a basic understanding of Bash commands.
- [Terminal](./OpenSARLab_terminal.md) - A built-in terminal within OpenScienceLab. The user should also have a basic understanding of Bash commands.

---

## **Gitpuller**

---

A [nbgitpuller](https://jupyterhub.github.io/nbgitpuller/) pulls any changes to the [notebook repo](https://github.com/ASFOpenSARlab/opensarlab-notebooks) each time an OpenSARLab deployment server starts up.
A [nbgitpuller](https://jupyterhub.github.io/nbgitpuller/) pulls any changes to the [notebook repo](https://github.com/ASFOpenSARLab/opensarlab-notebooks) each time an OpenSARLab deployment server starts up.

In short words, `nbgitpuller` will automatically update the notebooks to the latest version.

Expand Down
8 changes: 4 additions & 4 deletions docs/user-guides/jupyter_notebook_extensions.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
[Return to Table of Contents](../user.md)

# Managing Jupyter Lab Extensions
As an OpenSARlab Jupyter Lab user, you have limited access to third-party extensions.
As an OpenSARLab Jupyter Lab user, you have limited access to third-party extensions.

- Server extensions must be installed in the OpenSARlab Docker container and cannot be installed by users.
- Server extensions must be installed in the OpenSARLab Docker container and cannot be installed by users.
- Lab extensions can be installed, enabled, and disabled from the terminal but they will not persist across server restarts and will need to be reinstalled.
- If you feel that OpenSARlab is lacking an important Jupyter Lab extension, please contact us to request it at <[email protected]>
- If you feel that OpenSARLab is lacking an important Jupyter Lab extension, please contact us to request it at <[email protected]>

---

# Managing Jupyter Notebook Extensions
As an OpenSARlab Jupyter Notebook user, you have access to all of the notebook extensions available in the `nbextensions` package. A detailed list of extensions is available [here](https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/nbextensions.html).
As an OpenSARLab Jupyter Notebook user, you have access to all of the notebook extensions available in the `nbextensions` package. A detailed list of extensions is available [here](https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/nbextensions.html).

## Enabling and Disabling Extensions

Expand Down
6 changes: 3 additions & 3 deletions docs/user-guides/restarting_server_and_kernel.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[Return to Table of Contents](../user.md)

# **Restarting the OpenSARlab Server and Notebook Kernel**
# **Restarting the OpenSARLab Server and Notebook Kernel**

## **Restarting the OpenSARlab Server**
## **Restarting the OpenSARLab Server**

### Overview
---
Expand All @@ -17,7 +17,7 @@ Consider a case where:
A quick solution in either of those cases is to restart your server to run the `nbgitpuller`.

**NB**: If you are comfortable with _git_, you could do a `git pull` from
[the terminal](OpenSARlab_terminal.md) or in a notebook instead. However, do not push your changes as it may interfere with the `nbgitpuller`
[the terminal](OpenSARLab_terminal.md) or in a notebook instead. However, do not push your changes as it may interfere with the `nbgitpuller`

---

Expand Down
Loading

0 comments on commit 379a013

Please sign in to comment.