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.

---- - -

-![image.png](./sunset_40px.png) -[**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**. + +

+ ![Azure portal: Allow Blob anonymous access setting](./azure-portal-public-account-config.png) +

+ +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. + +

+ ![Azure portal: Change access level dialog with Container option selected](./azure-portal-public-container-access.png) +

+ +### 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** + +

+![image.png](./add-azureblob-10.png) +

+ +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** + +

+![image.png](./azureblob-20.png) +

+ +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**. + +

+![image.png](./azureblob-30.png) +

+ +## 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). + +

+ ![Azure portal: Shared access tokens permissions panel](./azure-portal-restricted-sas-permissions.png) +

+ +2. Click on the button **Generate SAS token and URL**. +3. Copy the generated **SAS URL** field. + +

+ ![Azure portal: Generated SAS URL field to copy](./azure-portal-restricted-sas-url.png) +

+ +### 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**. + +

+ ![Azure portal: Shared access signature page with Blob service and Read/List permissions selected](./azure-portal-full-access-sas.png) +

+ +### 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** + +

+![image.png](./azureblob-20.png) +

+ +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`. - - ![image.png](./use-your-own-docker-image-for-renku-session-30.png) - - - 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. - -

-![image.png](./streamlit-v2-example.png) -

- -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 ! - -

-![image.png](./jupiter-notebook.png) -

- -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). - -

-![image.png](./required-files.png) -

- -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)**. - -

-![image.png](./container-register.png) -

- -7. Copy the latest tagged image (registry_link). - -

-![image.png](./dashboard.png) -

- -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 - ``` - -2. **Create a new empty repository** in your chosen provider (for example GitLab.com or GitHub.com) -3. **Copy the clone URL for the new repository.** We'll call this URL ``. -4. Run the following commands from inside the repository to **push the repository to the new git repository provider**. You may want to name your new git origin (``) to match the provider, for example `github`. - - ```bash - cd - git remote add - git push --all - ``` - -5. **Important - The next time you push:** Set your `git push` to push to the new origin (git provider): - - ```bash - git push -u - ``` - -Here's a full, real-ish example (with identifiers removed 😉): - -```bash -# STEP 1 -git clone https://gitlab.renkulab.io/my.username/example-repo.git - -# STEP 2 -# Create new GitHub repo at -# https://github.com/my.username/example-repo - -# STEP 4 -cd example-repo -git remote add github git@github.com:my.username/example-repo.git -git push --all github - -# STEP 5 -# make some code changes... -git push -u github master - -``` - -:::tip - -**Does your new git provider not support git LFS data?** For a short term workaround, run the following command to push your code while ignoring the git LFS data: `git push --no-verify`. - -In the long term, we recommend that you move your git LFS data to a [cloud storage](../../data/data) that you can connect to your Renku 2.0 project. Feel free to [get in touch](mailto:hello@renku.io) with us if you need help. - -::: - -## 2. Update your Renku project code connection - -Don't forget to update your Renku 2.0 project with the new git repository URL! - -1. Copy the clone URL of your new repository. -2. On the code repository in your Renku project, click 'Edit' and replace the old URL with the new - one. - -## 3. Register a redirect (optional) - -Would you like links to your original `gitlab.renkulab.io` code repository to **automatically -redirect** to your new repository? [Register the new home of your code -repository](https://www.notion.so/2540df2efafc80a2bee5f1b7d247c28e?pvs=21) and we'll make it happen! diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/20-migrate-session-launcher-that-references-renku-gitlab.md b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/20-migrate-session-launcher-that-references-renku-gitlab.md deleted file mode 100755 index e78e562cea..0000000000 --- a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/20-migrate-session-launcher-that-references-renku-gitlab.md +++ /dev/null @@ -1,55 +0,0 @@ -# Migrate a session launcher that references RenkuLab GitLab - -:::danger - -**DATA REMOVAL DEADLINE - JANUARY 2026** - -The RenkuLab GitLab (gitlab.renkulab.io) will soon be shut down. All docker images hosted there will -be removed. Follow the migration instructions below before January 2026 to save your work. - -::: - -Renku 2.0 supports a variety of ways of working with sessions. To determine what kind of Renku -session environment is right for you and how to migrate, answer the following questions: - -## 1. Is your project’s code repository public or private? - -### → My code repository is public - -That’s great! Please continue to the next question, [2. What language does your project use?](#2-what-language-does-your-project-use) - -### → My code repository is private - -We will be releasing functionality to connect with images for private code repositories in October. Please hang tight and come back to migrate your launcher after the next major Renku release in October. - -To receive updates about major Renku releases, subscribe to the [Renku Newsletter](https://www.notion.so/12d0df2efafc8012a10ec4563b8d8b8c?pvs=21)! - -## 2. What language does your project use? - -### → I’m working in R - -If you don’t need any specific packages installed in your R session, follow these steps to create a new R session launcher in your project: - -1. Create a session launcher by clicking the ➕ button in the sessions box. -2. Select **global environment** -3. Select the **R** global environment - -If you do need custom packages installed in your R session, see [How to migrate an image from RenkuLab GitLab to Dockerhub](../../migrate-v1-v2/migrate-from-gitlab/migrate-image-dockerhub). - -### → I’m working in Python - -In Renku 2.0, you can also have Renku build session environment (docker image) from a code definition file. In Renku 2.0, this is called **code based environments**. See the following guide to set up a new code based environment from your code repository. - -[How to create an environment with custom packages installed](../../sessions/guides/environments/create-environment-with-custom-packages-installed) - -:::info - -**Important**: There is a key difference between the way images were built in Renku Legacy and the new way images are built in Renku 2.0. In Renku Legacy, projects came with both `requirements.txt` and `environment.yaml` files. Having both files confuses the Renku 2.0 system! Please delete one of the two files. - -::: - -Once you’ve created a code based environment launcher, you can delete your original, migrated launcher that references the RenkuLab GitLab. - -### → I’m working in another language - -See [How to migrate an image from RenkuLab GitLab to Dockerhub](../../migrate-v1-v2/migrate-from-gitlab/migrate-image-dockerhub). diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/30-migrate-image-dockerhub.md b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/30-migrate-image-dockerhub.md deleted file mode 100644 index 8dbb73724b..0000000000 --- a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/30-migrate-image-dockerhub.md +++ /dev/null @@ -1,216 +0,0 @@ -# Migrate an image to Docker Hub - -## Part 1: Move your image to Docker Hub - -### Prerequisites Setup - -**Step 1: Create a DockerHub account** - -- Go to [https://hub.docker.com](https://hub.docker.com/) and click "Sign Up" -- Choose a username (this will be part of your image URLs) -- Verify your email address - -**Step 2: Create a repository on DockerHub** - -- Log into DockerHub and click "Create a Repository" -- Choose a repository name (should match or relate to your GitLab project) -- Set visibility (Public or Private) -- Click "Create" - -From here, we offer two methods for migrating a RenkuLab GitLab docker image to Dockerhub. - -Use [**Method 1 (GitLab CI)**](#using-gitlab-cicd-pipeline) if you with to avoid installing docker locally. - -Use [**Method 2 (Docker CLI)**](#using-the-docker-command-line) if you with to avoid rebuilding your image. - -### Method 1: Using GitLab CI/CD Pipeline {#using-gitlab-cicd-pipeline} - -**Step 3: Set up variables in GitLab** - -- Go to your GitLab project → Settings → CI/CD → Variables -- Add these variables, entering the variable name as the KEY: - - `DOCKERHUB_USER`: Your DockerHub username - - `DOCKERHUB_REPO`: Your DockerHub repository name - - `DOCKERHUB_TOKEN`: Your DockerHub access token - - To get this value, in DockerHub: - 1. In the top right click on your profile and select “Account Settings” - 2. Click on “Personal Access Tokens” - 3. Give your token a name in the “Description” field - 4. Set the expiration date for 30 days, since you don’t need this token for long. - 5. For Access Permission, select “Read & Write” - 6. Copy the token - -**Step 4: Modify your CI/CD pipeline in GitLab** - -- Edit the `.gitlab-ci.yml` file in your repository and replace it with the following: - -```yaml -variables: - GIT_STRATEGY: fetch - GIT_SSL_NO_VERIFY: "true" - GIT_LFS_SKIP_SMUDGE: 1 - -stages: - - build - - mirror - -image_build: - stage: build - image: docker:stable - before_script: - - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN http://$CI_REGISTRY - script: | - CI_COMMIT_SHA_7=$(echo $CI_COMMIT_SHA | cut -c1-7) - docker build --tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA_7 . - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA_7 - -mirror: - stage: mirror - image: docker:latest - services: - - docker:dind - script: - - CI_COMMIT_SHA_7=$(echo $CI_COMMIT_SHA | cut -c1-7) - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker login -u $DOCKERHUB_USER -p $DOCKERHUB_TOKEN - - docker pull $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA_7 - - docker tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA_7 $DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_SHA_7 - - docker push $DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_SHA_7 -``` - -- Commit your changes. This should trigger a Pipeline run. -- Go to “Build” → “Pipelines” and confirm that the pipeline was successful and now has 2 stages instead of just 1. - - ![image.png](dockerhub-image-0.png) - -**Step 5: Confirm your image is on DockerHub & Find its identifier** - -- In DockerHub, go to your “Repositories”, click on the repository you created for this project. Under “Tags”, there should be 1 entry. Click on it. -- Copy the image identifier, which is in the form `/:` - - ![image.png](dockerhub-image-1.png) - -Your image is migrated! Continue to [Part 2: create a new session launcher](#part-2-create-a-new-renku-session-launcher-that-uses-the-migrated-image). - -### Method 2: Using the Docker command line {#using-the-docker-command-line} - -**Step 1: Create a RenkuLab GitLab Personal Access Token** - -- Go to https://gitlab.renkulab.io/-/user_settings/personal_access_tokens -- Click ‘Add new token” -- Fill out the form, and check the `read_registry` scope - -**Step 2: Install Docker locally** - -- Ensure Docker is installed and running on your machine -- Verify with: `docker --version` - -**Step 3: Log into both registries** - -```bash -*# Log into RenkuLan GitLab registry -# replace and with your account details -TOKEN= -echo "$TOKEN" | docker login registry.*renkulab.io *-u --password-stdin - -# Log into DockerHub* -docker login -*# Enter your DockerHub username and password* -``` - -**Step 4: Pull the image from GitLab registry** - -Replace with your actual image URL that is listed in your migrated Renku session launcher. - -```bash -docker pull registry.renkulab.io/your-username/your-project/your-image:tag -``` - -**Step 5: Tag the image for DockerHub** - -```bash -docker tag registry.renkulab.io/your-username/your-project/your-image:tag your-dockerhub-username/your-repo-name:tag -``` - -**Step 6: Push to DockerHub** - -```bash -docker push your-dockerhub-username/your-repo-name:tag -``` - -#### Verification and Cleanup - -**Step 9: Verify the migration** - -- Check your DockerHub repository online to confirm the image appears -- Test pulling from DockerHub: - - ```bash - docker pull your-dockerhub-username/your-repo-name:tag - ``` - -**Step 10: Clean up local images (optional)** - -```bash -*# Remove local copies if desired* -docker rmi registry.gitlab.com/your-username/your-project/your-image:tag -docker rmi your-dockerhub-username/your-repo-name:tag -``` - -Your image is migrated! Continue to [Part 2: create a new session launcher](#part-2-create-a-new-renku-session-launcher-that-uses-the-migrated-image). - -## Part 2: Create a new Renku Session Launcher that uses the migrated image {#part-2-create-a-new-renku-session-launcher-that-uses-the-migrated-image} - -In the project page: - -1. Under **Sessions** section click on ➕ to add a new launcher -2. Select **External environment** - -

-![image.png](dockerhub-image-2.png) -

- -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: - -

- ![image.png](dockerhub-image-3.png) -

- - :::warning - - This part is important! Please read carefully. - - ::: - -
- I’m using an image 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 that is **older** than version 0.24.0 (the version number is in the image tag). - - :::info - - 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. - - ::: - - Enter the following 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\""] - ``` - -
- -5. Select the **Resource class** that best fits your expected computational needs. -6. Give your session launcher a **name** -7. Click on **Add session launcher** button diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/_category_.yml b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/_category_.yml deleted file mode 100644 index bfae329424..0000000000 --- a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/_category_.yml +++ /dev/null @@ -1,2 +0,0 @@ -label: Migrate from Renku GitLab -description: Migrating code repositories and docker images diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-0.png b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-0.png deleted file mode 100644 index db935d48a3..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-0.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-1.png b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-1.png deleted file mode 100644 index 5c2c44bb4f..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-1.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-2.png b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-2.png deleted file mode 100644 index d571e5ff8f..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-2.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-3.png b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-3.png deleted file mode 100644 index 4d1720b290..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/dockerhub-image-3.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/index.md b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/index.md deleted file mode 100755 index 238e28e767..0000000000 --- a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/index.md +++ /dev/null @@ -1,43 +0,0 @@ -# How to migrate out of RenkuLab GitLab - -:::danger - -**DATA REMOVAL DEADLINE - JANUARY 2026** - -The RenkuLab GitLab (`gitlab.renkulab.io`) will soon be shut down. All code repositories and hosted -images remaining there will be removed. Follow the migration instructions below before January 2026 -to save your work. - -::: - -You have probably landed on this page because you have a code repository or session launcher that -needs to be migrated out of the RenkuLab GitLab before GitLab is shut down in January 2026. **If you -don’t migrate before the shutdown, you will lose access to your code repository and/or docker -image.** - -

-![image.png](./modal.png) -

- -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: - -

-![2_migration pill_2x.png](./migrate-out-of-renkulab-gitlab-10.png) -

- -Then, follow the instructions below to migrate each resource. - -```mdx-code-block -import DocCardList from '@theme/DocCardList'; - - - -``` - -:::info - -To learn more about the Renku Legacy and GitLab shut downs, see our blog post [Sunsetting Renku -Legacy: Your Guide to a Smooth Transition](https://blog.renkulab.io/sunsetting-legacy/). - -::: diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/migrate-out-of-renkulab-gitlab-10.png b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/migrate-out-of-renkulab-gitlab-10.png deleted file mode 100755 index 4f63162f5e..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/migrate-out-of-renkulab-gitlab-10.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/modal.png b/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/modal.png deleted file mode 100644 index 300de52c7d..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/20-migrate-from-gitlab/modal.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/_category_.yml b/docs/docs/10-users/85-migrate-v1-v2/_category_.yml deleted file mode 100644 index 9048a197f5..0000000000 --- a/docs/docs/10-users/85-migrate-v1-v2/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: Migrate from Renku Legacy diff --git a/docs/docs/10-users/85-migrate-v1-v2/index.md b/docs/docs/10-users/85-migrate-v1-v2/index.md deleted file mode 100644 index c6dabfdf62..0000000000 --- a/docs/docs/10-users/85-migrate-v1-v2/index.md +++ /dev/null @@ -1,12 +0,0 @@ -# Migrate from Renku Legacy - -

-![image.png](./renku-legacy.png) -

- -```mdx-code-block -import DocCardList from '@theme/DocCardList'; - - - -``` diff --git a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-10.png b/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-10.png deleted file mode 100755 index 3ab79d9311..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-10.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-20.png b/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-20.png deleted file mode 100755 index 0f06ce0f6a..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-20.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-30.png b/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-30.png deleted file mode 100755 index 4726f517c4..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-30.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-40.png b/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-40.png deleted file mode 100755 index e00454e7a0..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-40.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-50.png b/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-50.png deleted file mode 100755 index a588780b9f..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/migrate-renku-1-project-to-renku-2-50.png and /dev/null differ diff --git a/docs/docs/10-users/85-migrate-v1-v2/renku-legacy.png b/docs/docs/10-users/85-migrate-v1-v2/renku-legacy.png deleted file mode 100644 index 136229b755..0000000000 Binary files a/docs/docs/10-users/85-migrate-v1-v2/renku-legacy.png and /dev/null differ diff --git a/docs/docs/10-users/sunset_40px.png b/docs/docs/10-users/sunset_40px.png deleted file mode 100644 index eba9bbca84..0000000000 Binary files a/docs/docs/10-users/sunset_40px.png and /dev/null differ