Как мне сделать jupyter-hub доступным к моему личному хранилищу образов докеров? - PullRequest
1 голос
/ 17 мая 2019

Я хочу развернуть свой собственный образ на JuPyter-hub. Однако мне нужно развернуть его в каком-нибудь реестре, чтобы image puller из JHub мог извлечь его оттуда. В моем случае реестр является частным. Хотя я могу отправить образ в свой реестр, я не знаю, как сделать так, чтобы релиз и развертывание jupyterhub могли извлекать образ.

Я пытался прочитать этот документ (https://github.com/jupyterhub/jupyterhub-deploy-docker), но это не помогло мне понять, как мне добавить аутентификацию в развертывании jupyter hub.

Я развертываю jhub с помощью этой команды:

#  Suggested values: advanced users of Kubernetes and Helm should feel
# free to use different values.
RELEASE=jhub
NAMESPACE=jhub

helm upgrade --install $RELEASE jupyterhub/jupyterhub \
  --namespace $NAMESPACE  \
  --version=0.8.0 \
  --values jupyter-hub-config.yaml

где jupyter-hub-config.yaml выглядит следующим образом:

proxy:
  secretToken: "abcd"
singleuser:
  image:
    name: jupyter/datascience-notebook
    tag: some_tag
  lifecycleHooks:
    postStart:
      exec:
        command: ["/bin/sh", "-c", 'ipython profile create; cd ~/.ipython/profile_default/startup; echo ''run_id = "sample" ''> aviral.py']

Карта руля доступна здесь: https://jupyterhub.github.io/helm-chart/jupyterhub-0.8.2.tgz

И дерево этой схемы руля:

.
├── Chart.yaml
├── jupyter-hub-config.yaml
├── requirements.lock
├── schema.yaml
├── templates
│   ├── NOTES.txt
│   ├── _helpers.tpl
│   ├── hub
│   │   ├── configmap.yaml
│   │   ├── deployment.yaml
│   │   ├── image-credentials-secret.yaml
│   │   ├── netpol.yaml
│   │   ├── pdb.yaml
│   │   ├── pvc.yaml
│   │   ├── rbac.yaml
│   │   ├── secret.yaml
│   │   └── service.yaml
│   ├── image-puller
│   │   ├── _daemonset-helper.yaml
│   │   ├── daemonset.yaml
│   │   ├── job.yaml
│   │   └── rbac.yaml
│   ├── ingress.yaml
│   ├── proxy
│   │   ├── autohttps
│   │   │   ├── _README.txt
│   │   │   ├── configmap-nginx.yaml
│   │   │   ├── deployment.yaml
│   │   │   ├── ingress-internal.yaml
│   │   │   ├── rbac.yaml
│   │   │   └── service.yaml
│   │   ├── deployment.yaml
│   │   ├── netpol.yaml
│   │   ├── pdb.yaml
│   │   ├── secret.yaml
│   │   └── service.yaml
│   ├── scheduling
│   │   ├── _scheduling-helpers.tpl
│   │   ├── priorityclass.yaml
│   │   ├── user-placeholder
│   │   │   ├── pdb.yaml
│   │   │   ├── priorityclass.yaml
│   │   │   └── statefulset.yaml
│   │   └── user-scheduler
│   │       ├── _helpers.tpl
│   │       ├── configmap.yaml
│   │       ├── deployment.yaml
│   │       ├── pdb.yaml
│   │       └── rbac.yaml
│   └── singleuser
│       ├── image-credentials-secret.yaml
│       └── netpol.yaml
├── test-99.py
├── validate.py
└── values.yaml

Все, что я хочу сделать, - это разрешить jupyterhub получить доступ к моему личному репо с помощью secrets. В этом случае я не знаю, как сделать это доступным для него.

1 Ответ

2 голосов
/ 17 мая 2019

Image pull secret можно использовать для извлечения изображения из частного реестра.

Добавьте jupyter-hub-config.yam со следующим большим двоичным объектом.

imagePullSecret:
    enabled: true
    registry:
    username:
    email:
    password:

со значением

имя пользователя: AWS

пароль: aws ecr get-login --region ${REGION} --registry-ids ${ACCOUNT} | cut -d' ' -f6

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...