博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nginx访问jupyter
阅读量:5058 次
发布时间:2019-06-12

本文共 2093 字,大约阅读时间需要 6 分钟。

现在jupyter已通过k8s安装完成,并通过nodeport暴露出来。

如果不能直接访问这个nodeport(像我在的公司)或是希望能组织好jupyter实例,

那应该如何调通呢?

这里包括两个技术点:

一,jupyter本身需要允许指定ip的访问。

红色部分,继承了docker镜像的cmd,并新增了--NotebookApp.allow_origin='*'参数,不然,nginx跳过去,jypyter不接受。

apiVersion: apps/v1kind: Deploymentmetadata:  name: ai-jupyterspec:  replicas: 1  selector:    matchLabels:      name: ai-jupyter  template:    metadata:      labels:        name: ai-jupyter    spec:      imagePullSecrets:      - name: xxxx      nodeSelector:        accelerator: nvidia-tesla-k80      containers:      - name: sis-ai-jupyter        image: harbor.xxxx.com.cn/3rd_part/tensorflow:1.14.0-gpu-py3-jupyter        imagePullPolicy: IfNotPresent        command: ["bash", "-c", "source /etc/bash.bashrc && jupyter notebook --notebook-dir=/tf --ip 0.0.0.0  --no-browser --allow-root --NotebookApp.allow_origin='*'"]        resources:          limits:            nvidia.com/gpu: 2---apiVersion: v1 kind: Servicemetadata:  name: ai-jupyterspec:  type: NodePort  ports:  - port: 8888    targetPort: 8888    nodePort: 30302  selector:    name: ai-jupyter

 

二,nginx需要有websocket的升级处理。

红色部分,对kernels和terminals两个目录的连接,作了ws升级处理。

upstream ai_jupyter {    ip_hash;    server 1.2.3.4:30302;}server {    listen       8080;    server_name  localhost;    location / {        proxy_set_header Host $host;        proxy_set_header X-FORWARDED-FOR $remote_addr;        proxy_pass  http://ai_jupyter;    }    location ~ /api/kernels/ {        proxy_pass            http://ai_jupyter;        proxy_set_header      Host $host;        # websocket support        proxy_http_version    1.1;        proxy_set_header      Upgrade "websocket";        proxy_set_header      Connection "Upgrade";        proxy_read_timeout    86400;    }    location ~ /terminals/ {        proxy_pass            http://ai_jupyter;        proxy_set_header      Host $host;        # websocket support        proxy_http_version    1.1;        proxy_set_header      Upgrade "websocket";        proxy_set_header      Connection "Upgrade";        proxy_read_timeout    86400;    }}

 

转载于:https://www.cnblogs.com/aguncn/p/11187657.html

你可能感兴趣的文章
C++变量初始化
查看>>
node学习心得
查看>>
顺序表存储空间连续问题
查看>>
牛客练习赛46 E 华华和奕奕学物理 (树状数组)
查看>>
JSP实现在项目在网页上查询
查看>>
zencart 网站空白的解决方案
查看>>
【9927】庆功会
查看>>
poi读excel小例子
查看>>
在一台呆滞设置两个listener(Oracle)
查看>>
KDE-SDK(KDE斥地工具)引见
查看>>
Informix IDS 11系统办理(918检验)认证指南,第 7 局部: IDS复制(22)
查看>>
Informix IDS 11系统操持(918考试)认证指南,第 7 部门: IDS复制(17)
查看>>
[优化算法] 拉丁超立方采样与基于优化的均匀采样
查看>>
.NET EasyUI datebox添加清空功能
查看>>
session如何保存在专门的StateServer服务器中
查看>>
maven中snapshot快照库和release发布库的区别和作用
查看>>
C#作业补充(6)
查看>>
luogu1919 A*BProblem升级版 (FFT)
查看>>
react展示数据
查看>>
测试计划
查看>>