共计 954 个字符,预计需要花费 3 分钟才能阅读完成。
晚上试着使用docker部署以下tf开发的环境,感受到了容器的便利,以前自己编译还时不时出现异常的问题,又要从源码重新编译,每编译一次都要花费不少时间,如果一开始你的网络不佳,拉取tf代码都够喝一壶了。
弊端
- python 需要设置虚拟环境,防止环境相互交叉
- tf 安装
- 上述操作都是本地环境支持
你要是说conda一把梭也不是没有道理,笔者也是觉得conda很好用,但是现在遇到docker,发现更好用。
现在有docker这个开源的工具(对企业好像开始提供付费的服务了),在利用Google提供的景象可以很方便的构建代码环境,这当然还有巨硬的vscode编辑器,remote 插件实在是非常好用。
工具
vscode — 可以从微软的官网下载
docker —
- 官网下载
-
Macos 可以使用brew 安装,代码如下
brew install --cask docker
编辑 Docker 环境配置文件
- Dockerfile
- Docker-compose.yml
需要上面两个文件搭配使用,至于这两个文件的含义可以看下Docker相关的基础知识。
我安装的 tf 是1.14版本,具体的docker镜像可以从这里去找。
FROM tensorflow/tensorflow:1.14.0-py3-jupyter
目前的文件就是长这样,直接拉取1.14的镜像没有做其他任何的操作,这个镜像里是没有pandas的,所以你也可以在代码后面加上 pandas 安装的代码,这样生成的容器里面会携带 pandas之类的库,按需添加,是不是非常的方便。
下面的代码是compose文件的内容,volume按需配置哈,根据你自己定义的代码文件夹,我使用src放代码文件,data文件夹放训练数据,ports是用来使用jupyter服务的。
version: '3.1'
services:
tf:
build:
context: .
dockerfile: Dockerfile
ports:
- 8888:8888
volumes:
- ./src:/src
- ./data:/data
接下来在vscode中操作,在步骤2中其实并不是我图中的,因为我已经连上了,一开始没连接上,你需要配置 remote-Containers: Reopen in container
至此就配置完毕了,后面如果需要修改环境,只要搭积木就好了。