pangeo-data / pangeo-docker-images

Docker Images For Pangeo Jupyter Environment
https://pangeo-docker-images.readthedocs.io
MIT License
125 stars 91 forks source link

Can't start JupyterHub singleuser env using pangeo image #542

Open petrokashlikov opened 5 months ago

petrokashlikov commented 5 months ago

Describe the bug Hi, I'm trying to configure using Pangeo notebook to work with Dask. I've installed daskhub helm chart, but when I launch environment, Jupyterhub always throw error "Spawn failed: Server at http://xx.x.xx.xx:8888/user/user-1/ didn't respond in 120 seconds". I've figured out that this is due to Jupyter server not being launched when pod is started.

To Reproduce Below is configuration for this singleuser profile. As I see pangeo base image has ENTRYPOINT /srv/start an CMD is commented out. I tried passing various cmd options("jupyter --ip 0.0.0.0", "jupyterhub-singleuser --ip=0.0.0.0 --port=8888") via kubespawner, but it doesn't work.

- display_name: Dask
        description: "Pangeo Notebooks | Karpenter AutoScaling"
        kubespawner_override:
          image: pangeo/pangeo-notebook:2024.03.30
          node_selector:
            NodePool: default
          cpu_guarantee: 2
          mem_guarantee: 2G
          cpu_limit: 4
          mem_limit: 8G
          cmd: "jupyterhub-singleuser --ip=0.0.0.0 --port=8888"  

Expected behavior Jupyter server would start in the pod when using pangeo-notebook image

Docker Image Version (e.g. quay.io/pangeo/ml-notebook:2023.02.27): pangeo/pangeo-notebook:2024.03.30

Infrastructure (Where you are running this image): JupyterHub on EKS in AWS Cloud

scottyhq commented 4 months ago

I'd suggest opening an issue with whatever logs you have over at https://github.com/dask/helm-chart

It looks like their example config still uses pangeo/base-notebook by default https://github.com/dask/helm-chart/blob/f67e9ae23f4246ad3117d4450255b08aafee6104/daskhub/values.yaml#L59

Also in case it's helpful, these images are used by 2i2c-operated hubs and they have open source infrastructure configuration that may help you out https://github.com/2i2c-org/infrastructure