diff --git a/README.md b/README.md index ad8e2f3bf2..c3ad3b62bd 100644 --- a/README.md +++ b/README.md @@ -26,12 +26,6 @@ computational sessions. Projects are assembled by piecing together: image and share it easily with others to really make your code and data sing. -> [!NOTE] -> We are discontinuing Renku Legacy and the RenkuLab GitLab by January 2026 -> to focus all development efforts on the newly launched version of Renku, -> [Renku 2.0](https://blog.renkulab.io/launch-renku-2/). To learn more, including how to maintain access to your Renku -> Legacy projects, see our [transition guide](https://blog.renkulab.io/sunsetting-legacy/#how-to-migrate-projects-from-renku-legacy-to-renku-20). - ## Getting Started A public instance of **RenkuLab** is available at @@ -44,7 +38,7 @@ or visit our [documentation](https://docs.renkulab.io). - [Documentation for users](https://docs.renkulab.io/en/latest/docs/users/) - [Documentation for administrators](https://docs.renkulab.io/en/latest/docs/admins/architecture/services) -- [Renku blog](https://blog.renkulab.io/): discover what is new in Renku, for example [How Renku 2.0 is different from Renku Legacy](https://blog.renkulab.io/deep-dive-2-0/) +- [Renku blog](https://blog.renkulab.io/): discover what is new in Renku, for example [Renku Release June 2026](https://blog.renkulab.io/release-2026-06/) - [Community portal](https://renku.notion.site/Renku-Community-Portal-2a154d7d30b24ab8a5968c60c2592d87) - [\"Legacy\" documentation]([https://renku.readthedocs.org](https://docs.renkulab.io/en/0.70.1/)): the documentation pages for the previous version of the platform diff --git a/docs/docs/10-users/10-users.md b/docs/docs/10-users/10-users.md index 3747c7503d..4ef5bf0922 100644 --- a/docs/docs/10-users/10-users.md +++ b/docs/docs/10-users/10-users.md @@ -34,13 +34,6 @@ Renku is an **open-source platform for researchers and scientists to connect dat [**Knowledge Base**](/docs/users/knowledge-base/fair-open-science/) Curiosity about how it works? [Any doubts](/docs/users/knowledge-base/faq/)? Join our channels to keep in touch with us.
---- - -- -[**Renku Legacy:**](/docs/users/migrate-v1-v2/) Guidelines on how to migrate your code repositories from Legacy Renkulab Gitlab to your own code repository provider, and keep -
- ## Use cases | Researchers | Educators | Event organizers | diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/15-connect-to-azure-blob-storage.md b/docs/docs/10-users/40-data/guides/00-connect-data/15-connect-to-azure-blob-storage.md new file mode 100644 index 0000000000..6ebaae9fd6 --- /dev/null +++ b/docs/docs/10-users/40-data/guides/00-connect-data/15-connect-to-azure-blob-storage.md @@ -0,0 +1,137 @@ +--- +title: Azure Blob Storage +--- + +# How to connect to Azure Blob Storage + +:::info + +This guide assumes Storage Account-level permissions. If you had Azure IAM (Identity) rights, you could use "Service Principals" or "Entra ID" logins, which remains outside the scope of this documentation. + +::: + +## Public access + +This set-up allows you to provide access to data publicly without requiring authentication with **read-only** access. For setting this up, you just need your Azure storage account name and the container name. Bear in mind that access is controlled entirely at container level. + +### Azure portal configuration + +1. **Account level:** Go to **Settings > Configuration** and set **Allow Blob anonymous access** to **Enabled**. + ++  +
+ +2. **Container level:** Go to **Data storage > Containers**, select your container, and click **Change access level**. + - Select **Container**, which allows anonymously listing files and downloading. + ++  +
+ +### Set up in Renku + +1. Under **Data** section click on **+** button +2. Go to the tab **+ Create a data connector** and select **azureblob**. +3. Click on **Next** + ++ +
+ +4. Set the following parameters in **Connection information**: + 1. **Source path**: the `container_name` as specified in the storage account you are using (e.g. `my-container`). You can also mount a sub-folder by appending it to the bucket name with a slash, e.g. `my-container/sub-folder`. + 2. **Account Name**: the storage account name, e.g. `elisabettestsa` + +5. Click on **Test connection** and if succeeds, click **Next** + ++ +
+ +6. On the last page, fill in the final details for your data connector, namely: + 1. **Name**: pick any name for the data connector (e.g. `data`) + 2. **Owner:** select the namespace of the data connector (e.g. the user's, project's or a group's). + 3. **Visibility:** decide whether the data connector should be Public or Private. + 4. **Read-only**: keep it as read-only access. + +7. Click on **+ Add connector**. + ++ +
+ +## Restricted access + +Use this option to share data securely with your collaborators and stakeholders, controlling their access rights (e.g. read-only, write and delete files). + +### Azure portal configuration + +1. Go to **Data storage > Containers > [Your container] > Settings > Shared access tokens**. Select the desired permissions (e.g. **Read** and **List** for read-only access, select on top **Add**, **Create** and **Write** for read and write access, avoid **Delete** if you want an append/upload-only environment). + ++  +
+ +2. Click on the button **Generate SAS token and URL**. +3. Copy the generated **SAS URL** field. + ++  +
+ +### Set up in Renku + +Proceed to steps 1 to 3 from the [Public access set-up](#set-up-in-renku). + +4. In **Connection information**, click on **Show full options list** and set the following parameters: + 1. **Source path**: the storage account name, e.g. `elisabettestsa`. You can also mount a sub-folder by appending it to the bucket name with a slash, e.g. `my-container/sub-folder`. + 2. **sas_url**: the `blob_sas_url` as generated in your storage account. + +Continue with steps 5 to 7 as presented in the [public access set-up](#set-up-in-renku). + +:::warning + +You will need to share the sas_url value with your collaborators since they will be requested to enter the credentials. This variable will be stored as a user secret. + +::: + +:::info + +The most advanced way to manage external access in Azure is through controlled access with revocation, which allows you to revoke access immediately without changing account keys. You need to create the policy under **Containers > [Your Container] > Settings > Access policy** and click **+ Add policy**. Define a name and the permissions. When you are creating the shared access token, select the policy you just created under **Stored access policy**. If you delete the policy in Azure, access to the container will be instantly revoked. + +::: + +## Full access to your storage account + +This set-up allows you to have access to your full Azure storage account, with the access rights that you decide to set-up. + +### Azure portal configuration + +1. Go to **Security + networking > Shared access signature**. Select **Blob** service, **Service/Container/Object** types, and check **ONLY Read** and **List**. + ++  +
+ +### Set up in Renku + +Proceed to steps 1 to 3 from the [Public access set-up](#set-up-in-renku). + +4. Set the following parameters in **Connection information**: + 1. **Source path**: the `container_name` as specified in the storage account you are using (e.g. `my-container`). You can also mount a sub-folder by appending it to the bucket name with a slash, e.g. `my-container/sub-folder`. + 2. **Account Name**: the storage account name, e.g. `elisabettestsa` + +5. Click on **Test connection** and if succeeds, click **Next** + ++ +
+ +6. On the last page, fill in the final details for your data connector, namely: + 1. **Name**: pick any name for the data connector (e.g. `data`) + 2. **Owner:** select the namespace of the data connector (e.g. the user's, project's or a group's). + 3. **Visibility:** decide whether the data connector should be Public or Private. + 4. **Read-only**: do not uncheck this box, or the data connector will not work properly. + +7. Click on **+ Add connector**. \ No newline at end of file diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/add-azureblob-10.png b/docs/docs/10-users/40-data/guides/00-connect-data/add-azureblob-10.png new file mode 100644 index 0000000000..a1edc57d43 Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/add-azureblob-10.png differ diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-full-access-sas.png b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-full-access-sas.png new file mode 100644 index 0000000000..e52db65794 Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-full-access-sas.png differ diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-public-account-config.png b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-public-account-config.png new file mode 100644 index 0000000000..cc374aba99 Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-public-account-config.png differ diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-public-container-access.png b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-public-container-access.png new file mode 100644 index 0000000000..926813981a Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-public-container-access.png differ diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-permissions.png b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-permissions.png new file mode 100644 index 0000000000..e1b6b1a217 Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-permissions.png differ diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-url-public.png b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-url-public.png new file mode 100644 index 0000000000..86c46a5197 Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-url-public.png differ diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-url.png b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-url.png new file mode 100644 index 0000000000..64e861a093 Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/azure-portal-restricted-sas-url.png differ diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/azureblob-20.png b/docs/docs/10-users/40-data/guides/00-connect-data/azureblob-20.png new file mode 100644 index 0000000000..e3c53d34ca Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/azureblob-20.png differ diff --git a/docs/docs/10-users/40-data/guides/00-connect-data/azureblob-30.png b/docs/docs/10-users/40-data/guides/00-connect-data/azureblob-30.png new file mode 100644 index 0000000000..fc62f4f3e9 Binary files /dev/null and b/docs/docs/10-users/40-data/guides/00-connect-data/azureblob-30.png differ diff --git a/docs/docs/10-users/60-sessions/guides/00-environments/45-use-your-own-docker-image-for-renku-session.md b/docs/docs/10-users/60-sessions/guides/00-environments/45-use-your-own-docker-image-for-renku-session.md index b5301adde7..577ed2a95b 100755 --- a/docs/docs/10-users/60-sessions/guides/00-environments/45-use-your-own-docker-image-for-renku-session.md +++ b/docs/docs/10-users/60-sessions/guides/00-environments/45-use-your-own-docker-image-for-renku-session.md @@ -32,51 +32,21 @@ In the project page: - if the image is hosted on DockerHub: - `renku/renkulab-py:3.10-0.24.0` - `continuumio/anaconda3:2024.06-1` - - if the image is hosted on gitlab.renkulab.io: - - `registry.renkulab.io/laura.kinkead1/n2o-pathway-analysis:980f4a3` + - if the image is hosted on GitHub: + - `ghcr.io/swissdatasciencecenter/renku-frontend-buildpacks/base-image:0.0.8` - The image identifier should be in the format that works with `docker pull` -4. Depending on the image you’re using, you’ll need to fill in the **Advanced settings**. See the information below for how to fill it in: - - :::danger - - This part is important! Please read carefully. - - ::: - - I’m using an image created by **Renku** and that is **newer** than version 0.24.0 (the version number is in the image tag). - - The only additional parameter you have to provide in the session launcher creation dialog is the `Default URL` and this should be set to `/lab`. - -  - - - I’m using an image created by **Renku** and that is **older** than version 0.24.0 (the version number is in the image tag). - - :::note - - If you are working with an image in a launcher where the **launcher was created before November 27, 2024**, the launcher was migrated automatically with the new Renku release to include the necessary advanced settings. The instructions below apply only to new session launchers you are creating for the first time. - - ::: - - For Renku base images of version 0.24.0 or older (or images that are based on these images), you have 2 options: - 1. **Option 1:** Upgrade your base image to 0.25.0 or newer. This can be done by going into the settings of the Renku 1.0 project that builds the image, and accepting the updates. Or, directly update your Dockerfile to refer to the newer base image. - 2. **Option 2:** Provide additional configuration in the session launcher. Here is an example configuration needed to run a Renku base image of version 0.24.0 or older: - - **Container Image**: `renku/renkulab-py:3.10-0.24.0` or whatever image you are trying to use - - **Default URL**: `/lab` (or `/rstudio` if you are using `renku/renkulab-r` or `renku/renkulab-bioc`). - - **Mount Directory**: `/home/jovyan/work` - - **Working Directory**: `/home/jovyan/work` - - **UID**: `1000` - - **GID**: `100` - - **Command ENTRYPOINT**: `["sh", "-c"]` - - **Command Arguments**: - - ```json - [ - "/entrypoint.sh jupyter server --ServerApp.ip=0.0.0.0 --ServerApp.port=8888 --ServerApp.base_url=$RENKU_BASE_URL_PATH --ServerApp.token=\"\" --ServerApp.password=\"\" --ServerApp.allow_remote_access=true --ContentsManager.allow_hidden=true --ServerApp.allow_origin=* --ServerApp.root_dir=\"/home/jovyan/work\"" - ] - ``` - - - I’m using an image created **somewhere else** (not by Renku). - - You need to fill in the **Advanced Settings** for your image to work on RenkuLab. See [Example image configurations for common front ends](#example-image-configurations) below. +4. If needed, fill in the **Advanced settings** to tell Renku how to run your image. The available fields are: + + - **Container Image**: the image identifier to use (e.g. `renku/renkulab-py:3.10-0.24.0`) + - **Default URL**: the path appended to the session URL to open the front end (e.g. `/lab` for JupyterLab, `/rstudio` for RStudio) + - **Mount Directory**: the directory inside the container where Renku mounts your project files (e.g. `/home/jovyan/work`) + - **Working Directory**: the directory the session opens in (e.g. `/home/jovyan/work`) + - **UID**: the user ID the container process runs as (e.g. `1000`) + - **GID**: the group ID the container process runs as (e.g. `100`) + - **Command ENTRYPOINT**: the shell entrypoint (e.g. `["sh", "-c"]`) + - **Command Arguments**: the command passed to the entrypoint to start the front end server + + See [Example image configurations for common front ends](#example-image-configurations) below for ready-made values per front end. 5. Select the **Resource class** that best fits your expected computational needs. diff --git a/docs/docs/10-users/60-sessions/guides/00-environments/use-your-own-docker-image-for-renku-session-30.png b/docs/docs/10-users/60-sessions/guides/00-environments/use-your-own-docker-image-for-renku-session-30.png deleted file mode 100755 index 6a886e939e..0000000000 Binary files a/docs/docs/10-users/60-sessions/guides/00-environments/use-your-own-docker-image-for-renku-session-30.png and /dev/null differ diff --git a/docs/docs/10-users/60-sessions/guides/98-create-streamlit-app.md b/docs/docs/10-users/60-sessions/guides/98-create-streamlit-app.md deleted file mode 100644 index 20d7d22371..0000000000 --- a/docs/docs/10-users/60-sessions/guides/98-create-streamlit-app.md +++ /dev/null @@ -1,50 +0,0 @@ -# How to create a Streamlit app on top of your project - -:::info - -This documentation is out-of-date and will be updated soon! - -::: - -As of now, it is still possible to launch your Streamlit app on top of your Renku 2.0 project as follows. - -1. Create a fork of this repository: https://gitlab.renkulab.io/rok.roskar/streamlit-v2-example, we will refer to the fork as project-fork. - -- -
- -2. In _project-fork_, modify line 8 in the file `jupyter_noteboox_config.py`to the path to your python entry file for Streamlit within your Renku 2.0 project ( e.g. `work/name-fork-project/helloworld.py` or `work/main-project-repository/streamlit/app.py` or `work/repository-2/app.py` ) - - ⚠️ Do not forget to add `work/` at the beginning of the path ! - -- -
- -3. Add all the package dependencies you will need to run your Renku 2.0 project in the requirements.txt file or in the environment.yml , as explained [here](./environments/install-packages-on-the-fly-in-your-session). - -- -
- -4. Commit your changes for _project-fork_. -5. Select **Deploy(5a)/Container Registry(5b)** on the left menu of _project-fork_. -6. Click on top of your image registry to access the tags **(6)**. - -- -
- -7. Copy the latest tagged image (registry_link). - -- -
- -8. Add a session launcher to your Renku 2.0 project the following **Custom Environment** set-up \*\*\*\*as described in [How to use your own docker image for a Renku session](./environments/use-your-own-docker-image-for-renku-session). Consider the following two parameters: - 1. **Container Image:** `*registry_link*` - 2. **Default URL:** `/streamlit` -9. [Optional] If the entry point for your streamlit app will be hosted in _project-fork,_ add _project-fork_ code repository to your Renku 2.0 project. - -You can now start a session with your new streamlit launcher to access the streamlit app directly in your browser. diff --git a/docs/docs/10-users/60-sessions/guides/90-create-custom-environment-and-launcher-for-shiny-app.md b/docs/docs/10-users/60-sessions/guides/_90-create-custom-environment-and-launcher-for-shiny-app.md similarity index 100% rename from docs/docs/10-users/60-sessions/guides/90-create-custom-environment-and-launcher-for-shiny-app.md rename to docs/docs/10-users/60-sessions/guides/_90-create-custom-environment-and-launcher-for-shiny-app.md diff --git a/docs/docs/10-users/60-sessions/guides/container-register.png b/docs/docs/10-users/60-sessions/guides/container-register.png deleted file mode 100644 index 9dafe794f2..0000000000 Binary files a/docs/docs/10-users/60-sessions/guides/container-register.png and /dev/null differ diff --git a/docs/docs/10-users/60-sessions/guides/dashboard.png b/docs/docs/10-users/60-sessions/guides/dashboard.png deleted file mode 100644 index 2aea852229..0000000000 Binary files a/docs/docs/10-users/60-sessions/guides/dashboard.png and /dev/null differ diff --git a/docs/docs/10-users/60-sessions/guides/jupiter-notebook.png b/docs/docs/10-users/60-sessions/guides/jupiter-notebook.png deleted file mode 100644 index d1bbba98fe..0000000000 Binary files a/docs/docs/10-users/60-sessions/guides/jupiter-notebook.png and /dev/null differ diff --git a/docs/docs/10-users/60-sessions/guides/required-files.png b/docs/docs/10-users/60-sessions/guides/required-files.png deleted file mode 100644 index cc917bfe14..0000000000 Binary files a/docs/docs/10-users/60-sessions/guides/required-files.png and /dev/null differ diff --git a/docs/docs/10-users/60-sessions/guides/streamlit-v2-example.png b/docs/docs/10-users/60-sessions/guides/streamlit-v2-example.png deleted file mode 100644 index 941bea377a..0000000000 Binary files a/docs/docs/10-users/60-sessions/guides/streamlit-v2-example.png and /dev/null differ diff --git a/docs/docs/10-users/80-use-cases/20-teaching/index.md b/docs/docs/10-users/80-use-cases/20-teaching/index.md index 6f108272ac..0a9f4ab22b 100644 --- a/docs/docs/10-users/80-use-cases/20-teaching/index.md +++ b/docs/docs/10-users/80-use-cases/20-teaching/index.md @@ -61,7 +61,7 @@ We hereby share with you some sample projects that may inspire you for setting u allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen> - This webinar introduces instructors to Renku 2.0 and presents how to setup and create interactive, reproducible learning environments. After this webinar, you will be able to: + This webinar introduces instructors to Renku and presents how to setup and create interactive, reproducible learning environments. After this webinar, you will be able to:✨ Understand Renku's core features for educational purposes
🧑🏼🏫 Create and manage teaching materials in Renku
diff --git a/docs/docs/10-users/85-migrate-v1-v2/10-migrate-renku-1-project-to-renku-2.md b/docs/docs/10-users/85-migrate-v1-v2/10-migrate-renku-1-project-to-renku-2.md deleted file mode 100755 index 2589e9b11f..0000000000 --- a/docs/docs/10-users/85-migrate-v1-v2/10-migrate-renku-1-project-to-renku-2.md +++ /dev/null @@ -1,83 +0,0 @@ -# Migrate a Renku Legacy project to Renku 2.0 - -Time is running short! Renku Legacy was discontinued in October 2025, and you still have access to your Renkulab Gitlab projects until end of January 2026. Hence, move your code repositories as explained in our [detailed migration guides](https://blog.renkulab.io/sunsetting-legacy/#how-to-move-a-code-repository-to-an-external-provider) and in our dedicated videos. - -- -*Bring your RenkuLab GitLab project to the public GitLab instance with the import feature.* -
- -## 1. Move a code repository to an external provider - -1. **Clone your repository** from the RenkuLab GitLab to your local machine - - ```bash - git clone- -
- -3. For the container image, enter your **image identifier**. - - Some examples of image identifiers: - - `renku/renkulab-py:3.10-0.24.0` - - `continuumio/anaconda3:2024.06-1` - - The image identifier should be in the format that works with `docker pull` -4. Depending on the image you’re using, you’ll need to fill in the **Advanced settings**. See the information below for how to fill it in: - --  -
- - :::warning - - This part is important! Please read carefully. - - ::: - -- -
- -To determine what resources in your project need to be migrated, look for the **Migration needed** -badge on code repositories and session launchers in your project: - -- -
- -Then, follow the instructions below to migrate each resource. - -```mdx-code-block -import DocCardList from '@theme/DocCardList'; - -- -
- -```mdx-code-block -import DocCardList from '@theme/DocCardList'; - -