|
| 1 | +# Development Guide |
| 2 | + |
| 3 | +## Table of Contents |
| 4 | + |
| 5 | +- [Development Guide](#development-guide) |
| 6 | + - [Table of Contents](#table-of-contents) |
| 7 | + - [Introduction](#introduction) |
| 8 | + - [Prerequisites](#prerequisites) |
| 9 | + - [Getting Started](#getting-started) |
| 10 | + - [In an existing cluster](#in-an-existing-cluster) |
| 11 | + - [Using kind](#using-kind) |
| 12 | + - [Teardown](#teardown) |
| 13 | + - [Troubleshooting](#troubleshooting) |
| 14 | + - ["Build Failed: failed to dial gRPC: unable to upgrade to h2c, received 404"](#build-failed-failed-to-dial-grpc-unable-to-upgrade-to-h2c-received-404) |
| 15 | + |
| 16 | +## Introduction |
| 17 | + |
| 18 | +This guide will help you set up a development environment for the Kubeflow Notebooks project. |
| 19 | + |
| 20 | +## Prerequisites |
| 21 | + |
| 22 | +- Go >= 1.22 |
| 23 | +- Kubectl >= 1.22 |
| 24 | +- A Kubernetes cluster (e.g. [kind](https://kind.sigs.k8s.io/)) |
| 25 | +- Cert-manager installed in the cluster, see [cert-manager installation guide](https://cert-manager.io/docs/installation/#default-static-install) |
| 26 | + |
| 27 | +## Getting Started |
| 28 | + |
| 29 | +This project uses [Tilt](https://tilt.dev/) to manage the development environment. Tilt will watch for changes in the project and automatically rebuild the Docker image and redeploy the application in the **current Kubernetes context**. |
| 30 | + |
| 31 | +### In an existing cluster |
| 32 | + |
| 33 | +1. Make sure you have a Kubernetes cluster running and `kubectl` is configured to use it. |
| 34 | +2. Run the following command to start Tilt: |
| 35 | + |
| 36 | +```bash |
| 37 | +make -C devenv tilt-up |
| 38 | +``` |
| 39 | + |
| 40 | +3. Hit `space` to open the Tilt dashboard in your browser and here you can see the logs and status of every resource deployed. |
| 41 | + |
| 42 | +### Using kind |
| 43 | + |
| 44 | +1. Create a kind cluster: |
| 45 | + |
| 46 | +```bash |
| 47 | +kind create cluster |
| 48 | +``` |
| 49 | + |
| 50 | +2. Run the following command to start Tilt: |
| 51 | + |
| 52 | +```bash |
| 53 | +make -C devenv tilt-up |
| 54 | +``` |
| 55 | + |
| 56 | +3. Hit `space` to open the Tilt dashboard in your browser and here you can see the logs and status of every resource deployed. |
| 57 | + |
| 58 | +## Teardown |
| 59 | + |
| 60 | +To stop Tilt and remove all resources created by it, run: |
| 61 | + |
| 62 | +```bash |
| 63 | +make -C devenv tilt-down |
| 64 | +``` |
| 65 | + |
| 66 | +## Troubleshooting |
| 67 | + |
| 68 | +### "Build Failed: failed to dial gRPC: unable to upgrade to h2c, received 404" |
| 69 | + |
| 70 | +If you see the following error message when tilt builds the image, try setting `DOCKER_BUILDKIT=0`: |
| 71 | + |
| 72 | +```bash |
| 73 | +DOCKER_BUILDKIT=0 make -C devenv tilt-up |
| 74 | +``` |
0 commit comments