提示:文章写完后,可以自动生成目录。生成方法请参考右侧帮助文档
前言
毕业设计要用到深度学习,于是想着使用docker+pycharm来搭建深度学习环境,使用过程中遇到一个问题,代码中使用了matplotlib,无法将图片直接绘制出来,报错,有一个tensorboardx的解决方案,但是那个是后端交互的,没有直接绘制方便
提示:以下是本篇文章正文内容,下面案例可供参考
1. 需求
1.使用docker搭建深度学习环境
2.pycharm连接docker镜像,实现解释器在镜像中,代码本地,图像在本地中显示
2.使用步骤
1.安装xserver
#安装xserver
$sudo apt install x11-xserver-utils
#许可所有用户都可访问xserver 注意加号前应有空格
$xhost +
开放权限,允许所有用户,当然包括docker,访问X11 的显示接口
xhost+在重启系统之后会失效,需要重新设置,也可以使用永久生效的设置方法
2.将Tkagg设置为docker镜像中matplotlib的后端参数。
首先从镜像启动容器并安装以下依赖库
$ sudo apt-get install tcl-dev tk-dev python-tk python3-tk
用pip卸载已经安装的matplotlib库
$ pip uninstall matplotlib
然后重新安装matplotlib。
pip install matplotlib
让我们再看看当前的后端设置。
>>> import matplotlib
>>> matplotlib.get_backend()
'TkAgg
此时,后端设计已经修改。
之后使用docker commit 命令将容器保存为新的镜像
3.在pycharm中连接我们新保存的镜像
这个时候我们的pycharm中已经识别到了本机的docker镜像
4.在pycharm中为docker镜像增加启动参数
点击pycharm工具栏的run,然后选择edit configurations
在python interpreter中选择我们docker镜像中的解释器
之后在docker container setting 中为docker镜像添加启动参数
启动参数如下:
–entrypoint= –network=host –gpus all -v /tmp/.X11-unix:/tmp/.X11-unix -e GDK_SCALE -e GDK_DPI_SCALE –privileged –rm
参考链接:
Docker容器图形界面显示(运行GUI软件)的配置方法
显示matplotlib图的简单Docker容器
Matplotlib无法显示图像的问题
文章出处登录后可见!