Docker日常使用频繁的命令

1.查看本机上所有image
docker images
2.查看运行中的docker container
docker ps
查看所有container,包括已被停止的container
 
3.从当前目录Dockerfile创建一个新的docker image,名为ubuntu的image的tag是latest
docker build -t [imageName]:[tag] [path]
docker build -t ubuntu:latest .
其中-t指定image的tag,最后一个参数是Dockerfile的路径。
删除存在的image:(必须在所有container都被kill之后) (务必注意请仅操作属于自己的docker image)
Docker rmi [image ID] 
 
4.从image创建一个container,给container命名一个名字,从主机中同步一份文件到container中
docker run -ti -v [file path in host]:[file path in container] --name [container name] [docker image name] bash
docker run -ti -v /home/lixiaodian/document/:/home/document/ --name lixiaodian ubuntu bash
用交互式方式运行名为ubuntu的image(-ti),给containner起名叫lixiaodian,将主机的文件夹与创建的container里的文件夹同步(-v),使你在container中所作的修改能够实时保存在主机中,可以防止container意外关闭数据丢失。
最后一个参数指定运行方式。
 
5.打开在后台运行中的container
docker exec -ti [container_name] bash
docker exec -ti lixiaodian bash

6.访问远端服务器上docker里运行的tensorboard
  • 在服务器端使用docker -p给docker映射一个服务器端口:
docker run -ti -v /home/lixiaodian/document/:/home/document/ -p 0.0.0.0:6007:6006 [name of container] bash
      其中:-v及其参数表示内存同步,-p的参数含义为ip:hostPort:containerPort
  • 在docker上使用6006端口正常启动tensorboard:(用pip安装了tensorboard,所以直接命令行运行)
tensorboard --logdir=./
  • 用浏览器访问服务器响应端口:202.120.38.51:6007
 
7.宿主机和container文件互传
docker cp [file path in host] [container name]:[file path in container]
docker cp /home/lixiaodian/Data/cudnn-8.0-linux-x64-v6.0.tgz ubuntu:/home/Download
 
对于已经退出的container,则可以使用docker ps -a来查看。
如果你退出了一个container而忘记保存其中的数据,你可以使用docker ps -a来找到对应的运行过的container使用docker commit命令将其保存为image然后运行。
posted @ 2018-10-15 11:49  吃代码的小毛驴  阅读(615)  评论(0编辑  收藏  举报