目录
- docker run -d nginx:latest
-
- -d 表示在当前终端的后台中运行
- nginx:latest 就是最新的nginx版本
执行此命令下载容器镜像
下载过程分三步:1.在本地找镜像,如果没找到则进行第2步;
2.从镜像库中下载镜像 pull from .....
3.解压安装并运行,最后留下容器ID;
docker ps
容器名称:没有指定就随机取
容器中必须要有运行的命令,没有运行的命令就会被关闭
容器id用于操作容器
- docker inspect 容器id
- 如 docker inspect d30b76f20f0f
- 容器id需要唯一识别容器,不需要全部复制黏贴
容器id与docker0靠虚拟网卡来通信
docker0与NAT之间有网桥,实现容器与物理机的通信
NAT靠eth0s3与互联网通信
curl http://172.17.0.3
官方文档:Reference documentation | Docker Documentation
docker -h
某个命令下的选项如
docker run --help
- docker run -i -t --name c1 centos:latest bash
-
- 命令解释
- -i 交互式
- -t 提供终端
- --name c1 把运行的容器命名为c1
- centos:latest 使用centos最新版本容器镜像
- bash 在容器中执行的命令
用户,容器id,所处的目录
在容器中执行命令和在物理机中的一样
- ip a s (lo是本地回环网卡)
- ls a
- hostname 主机名
- ps aux 查看当前的进程
退出容器
exit
退出容器后容器就停止了,用docker ps看不到需要用
docker ps -all
如果想退出容器并保持容器运行就用以下方法:
在提示符处按住ctrl键,再按p键和q键,可以退出交互式容器,容器会保持运行
命令解释
- docker ps 看运行的
- docker ps -all 看停止和运行的
命令解释:可以看到容器处于运行状态
docker inspect 容器名字/容器id
- docker exec -it c2 ls /root
- 命令解释
- docker exec 在容器外实现与容器交互执行某命令
- -it 交互式
- c2 正在运行的容器名称
- ls /root 运行的命令
- docker attach c2
- 命令解释:类似与ssh,进入容器中
退出容器则有两种
- exit 退出容器,并且把容器关闭
- ctrl + p + q 退出容器,但容器还存在
- docker stop 容器
- 命令解释:让容器停止下来
- docker start 容器
- 命令解释:和stop相反,把停止的容器开启
- docker top 容器
- 命令解释: 查看容器中运行的进程
- docker rm 容器id/容器名
- 命令解释:与docker run相反,删除容器
补充命令
- docker ps -all | awk '{if (NR>=2){print $1}}' | xargs docker rm
-
- #命令解释: nr>=2是因为第一行是名称,我们不需要;
- #命令结果:删除全部容器