查看本地docker信息
$ sudo docker info
运行容器
运行可交互式容器
$ sudo docker run -i -t ubuntu /bin/sh
守护式容器(后台运行)
$ sudo docker run -d ubuntu
命名
$ sudo docker run --name=ubuntu_test ubuntu
停止、启动、杀死
$ sudo docker stop <容器名orID>
$ sudo docker start <容器名orID>
$ sudo docker kill <容器名orID>
docker stop可以更优雅的关闭容器,容器里的进程可以很好的退出。
docker kill相当于快速地强制关闭容器。但是关闭容器并非是docker kill的唯一功能,向容器发送信号也是很有用的功能
查看正在运行的容器
$ sudo docker ps
$ sudo docker ps -a(查看所有的容器,包括已经停止的)
$ sudo docker ps -l(查看最后一次运行的容器)
删除单个容器
$ sudo docker rm <容器名orID>
删除所有容器
$ sudo docker rm $(docker ps -a -q)
$ sudo docker rm `docker ps -a -q`
查看所有镜像
$ sudo docker images
删除所有镜像
$ sudo docker rmi $(docker images | grep none | awk '{print $3}' | sort -r)
拉取镜像
$ sudo docker pull <镜像名:tag>
当需要把一台机器上的镜像迁移到另一台机器的时候,需要保存镜像与加载镜像
机器a
$ sudo docker save ubuntu > /home/save.tar
使用scp将save.tar拷到机器b上,然后
$ sudo docker load < /home/save.tar
构建自己的镜像
$ sudo docker build -t <镜像name> <Dockerfile路径>
保存对容器的修改
$ sudo docker commit <容器id> <镜像name>
上传image
$ sudo docker push <镜像name>
附着到运行中的容器上
$ sudo docker attach <容器名orID>
查看容器日志
$ sudo docker logs <容器名>
$ sudo docker logs -f <容器名> (-f来监控docker的日志)
查看容器内的进程
$ sudo docker top <容器名orID>
容器内部运行进程
容器中运行后台任务(如创建一个空文件)
$ sudo docker exec -d ubuntu touch /etc/new_file
容器内运行交互命令
$ sudo docker exec -t -i ubuntu /bin/bash
获取容器的详细信息
$ sudo docker inspect <容器名>
容器间的通信
$ sudo docker run -it --link <container1>:<container1name> --name <containername> <imagename> /bin/bash
container1是要连接的容器的名称,container1name是容器1的别名,containername是新启动的容器的名称,imagename为镜像名称