PyCharm连接Docker容器内部Python解析器和Jupyter

1 Python解析器配置

1.1 启动容器

nvidia-docker run -p 23:22  -it -d --name="容器名称" -v "主机共享路径":"容器映射路径"  镜像名称  /bin/bash
# --net=host 映射所有端口
必须对主机22端口做映射,牵扯到是否可以最后连接容器

1.2 进入容器

docker exec -it "容器名称" /bin/bash

1.3 更新容器的apt源,安装ssh

apt-get update

apt-get install openssh-server

apt-get install vim

1.4 使用vim打开并修改配置文件

vim /etc/ssh/sshd_config 打开sshd_config配置文件

1. 找到PermitRootLogin prohibit-password这一行,修改为PermitRootLogin yes,允许通过ssh远程访问docker
2. 找到Port这一行,设置远程连接服务的端口号, 默认为22,可以修改为一个认为合适的端口号

1.5 创建docker中root用户的密码

passwd root

1.6 启动ssh服务,至此,服务器端配置完毕

service ssh restart

注意:容器重启之后,需要重新启动ssh服务

1.7 Pycharm连接容器

Tool->Deployment->Conifguration

添加SFTP服务,设置主机地址,已经刚刚映射的端口号,例如上面的"23"

之后可以映射项目路径,以及配置服务器python解析器

2 Jupyter Notebook配置

2.1与2.2顺序不能颠倒,其他虚拟环境只需要安装jupyter即可,外部浏览器就可以使用其他环境

2.1 进入容器安装nb_conda插件

conda deactivate 
conda activate base 
# 为了让 jupyterlab识别到虚拟环境中的python内核
conda install nb_conda_kernels or conda install nb_conda 

2.2 进入anaconda虚拟python env安装jupyter

conda activate env_name 
pip install jupyter
# install jupyter lab 
pip install jupyterlab 

2.3 配置notebook在.jupyter文件夹下

jupyter notebook --generate-config # 会自动生成.jupyter文件夹
or jupyter lab --generate-config
jupyter notebook password
or jupyter lab password

配置文件: ~/.jupyter/jupyter_notebook/lab_config.py 
密钥文件: ~/.jupyter/jupyter_notebook/lab_config.json 
	jupyter_notebook/lab_config.json文件中包含一个password字段,包含设置的密码

2.4 修改配置文件

c.NotebookApp.ip='*'
c.NotebookApp.password = u'生成的密钥' #  jupyter_notebook_config.json文件中的password字段
c.NotebookApp.open_browser = False
c.NotebookApp.port = 8888 #可指定一个端口, 访问时使用该端口(虽然运行jupyter时可以直接指定端口)
c.NotebookApp.notebook_dir = '/root'  # 自定义启动目录
# 如果是jupyter lab 
NotebookApp 替换为 ServerApp

2.5 后台启动jupyter server

conda deactivate 
conda activate base
nohup jupyter notebook --ip=0.0.0.0 --no-browser --allow-root --port 8888 > jupyter.log 2>&1 &
or 
nohup jupyter lab --ip=0.0.0.0 --no-browser --allow-root  > jupyter.log 2>&1 &

3 更新Nvidia驱动

apt 指令安装

sudo apt update 
sudo apt upgrade

查看目前有哪些nvidia的驱动能用

sudo apt-cache search nvidia-driver

展示部分结果

nvidia-384 - Transitional package for nvidia-driver-390
nvidia-384-dev - Transitional package for nvidia-driver-390
nvidia-driver-390 - NVIDIA driver metapackage
nvidia-headless-390 - NVIDIA headless metapackage
nvidia-headless-no-dkms-390 - NVIDIA headless metapackage - no DKMS
...
nvidia-driver-495 - Transitional package for nvidia-driver-510
nvidia-driver-510 - NVIDIA driver metapackage

遇到找不到的问题,可以尝试添加其他显卡驱动package的来源

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

选定nvidia-430这个版本,就可以直接使用下面的指令安装

sudo apt install nvidia-430

卸载系统旧版的nvidia驱动

sudo apt-get remove --purge nvidia*
sudo apt autoremove
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值