PyCharm配置Docker
若对你有帮助欢迎Star⬆
我想对于每一个开发者来说,最初的配置环境是一件非常头疼的事情,不仅有很多的软件要安装还有很多环境变量要配置。好不容易弄好的环境,放到别人的电脑上还不好使
😡
。现在我们有了docker就再也不用担心环境变量的配置了。
我们本节要使用mac+windows搭建起自己的深度学习开发环境。

前提条件

  1. 1.
    电脑已安装docker。
  2. 2.
    docker服务已经启动。

选择深度学习的docker镜像

在Docker的官方的registry里(可以理解为装满docker镜像的市场),提供了许多镜像,其中包括:
  1. 1.
    pytorch
  2. 3.
我们可以直接下载这些镜像并在本地将其加载为容器(不懂没关系,照着命令敲也一样),这样我们的开发环境就搭建好了,很方便有没有?
但是我们这里选择一个更方便的镜像:deepo。这个镜像是国人做的一款针对深度学习的镜像,里面包含了当下许多流行的框架。
1
>>> import tensorflow
2
>>> import sonnet
3
>>> import torch
4
>>> import keras
5
>>> import mxnet
6
>>> import cntk
7
>>> import chainer
8
>>> import theano
9
>>> import lasagne
10
>>> import caffe
11
>>> import caffe2
Copied!
我们接下来就使用这个镜像搭建我们的开发环境。

拉取镜像

因为我的电脑是mac,不支持gpu版本,所以我们直接拉取CPU版本镜像。
1
docker pull ufoym/deepo:cpu
Copied!
如果你的电脑支持GPU那么可以拉取GPU版本镜像
1
docker pull registry.docker-cn.com/ufoym/deepo
Copied!

加载容器

对于CPU版本,我们使用这个命令
1
docker run -it -v /host/data:/data -v /host/config:/config ufoym/deepo:cpu bash
Copied!
其中我们使用-v参数做了数据的持久化存储
对于GPU版本我们使用这个命令
1
docker run --gpus all -it -v /host/data:/data -v /host/config:/config ufoym/deepo bash
Copied!
若不习惯PyCharm也可以使用jupyter notebook。
1
docker run --gpus all -it -p 8888:8888 --ipc=host ufoym/deepo jupyter notebook --no-browser --ip=0.0.0.0 --allow-root --NotebookApp.token= --notebook-dir='/root'
Copied!
这样我们访问本地的localhost的8888端口就是访问到docker容器内的jupyter notebook,因为这里的-p参数做了端口的映射。

使用容器

现在我们的深度学习环境已经搭建好了,接下来我们直接使用这个容器

Mac使用Docker

对于mac来说,在PyCharm上使用docker非常简单,在preferences中选择Docker,然后选择Docker for Mac就可以。我们在Mac中不用执行上一步手动的加载容器,PyCharm会自动的为我们加载容器。
接下来就像本地搭建的开发环境一样运行程序即可。

Windows使用Docker

TODO

总结

对于搭建好的开发环境,如果未来我们需要迁移到别的机器上进行开发,很简单,只需要将我们当前的这个镜像拷贝到新的机器上即可实现迁移,再也不用为搭建开发环境而苦恼了。
最近更新 1yr ago