lijiankuan
4/7/2019 - 3:27 PM

[Docker run Command] #docker

[Docker run Command] #docker

eg. 创建新的tensorflow容器,映射目录、端口,退出后清理容器,分配交互终端

nvidia-docker run --rm -p 8888:8888 -v ~/notebooks:/notebooks -it tensorflow/tensorflow:latest-gpu

run命令使用说明:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
  • -d: 后台运行容器,并返回容器ID;
  • -i: 以交互模式运行容器,通常与 -t 同时使用;
  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
  • -p: 端口映射,格式为:主机(宿主)端口:容器端口;
  • -v: 目录映射,主机目录:容器目录
  • --rm: 在Docker容器退出时,默认容器内部的文件系统仍然被保留,以方便调试并保留用户数据。但是,对于foreground容器,由于其只是在开发调试过程中短期运行,其用户数据并无保留的必要,因而可以在容器启动时设置--rm选项,这样在容器退出时就能够自动清理容器内部的文件系统

eg. 使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data。

docker run -p 80:80 -v /data:/data -d nginx:latest

eg. 利用 Nvidia Docker,使用 Tensroflow GPU 版本,

docker run --runtime=nvidia -it tensorflow/tensorflow:latest-gpu bash