docker是如何工作的
- client - server架构
- dockerServer接收客户端的命令,然后执行
帮助命令
docker version
- 版本信息
docker info
- 信息
docker [命令] --help
- 帮助命令,输出使用方法
镜像命令
docker images
- 查看主机上所有的镜像信息
- 仓库源 标签 id 创建时间 大小
- 选项
- -a: --all,列出所有镜像
- -q: --quiet , 只显示镜像id
docker search
- 搜索
docker pull 镜像名:tag
- 下载镜像
- 如果不写标签默认是latest
docker rmi -f
- 删除镜像,可以用镜像id删除
骚操作:删除所有镜像
docker rmi -f $(docker images -aq)
容器命令
docker ps
- 列出所有运行中的容器
- 参数
- -a查看历史运行过的和现在在运行的
- -q只显示编号
exit
- 容器停止并推出
ctrl + p +q
- 容器不停止并推出
docker rm 容器id
- 删除容器
- 运行的无法删除 除非加上 -f
docker start 容器id
docker restart 容器id
docker stop 容器id
docker kill 容器id
- 启动和停止容器的操作
docker top 容器id
- 查看容器内进程信息
docker inspect 容器id
- 显示容器元数据
docker exec -it 容器id /bin/bash
- 进入当前正在运行的容器
docker attach -it (id) /bin/bash
- 同上
exec与attach区别
exec 开启一个新终端,在里面工作
attach 进入容器正在执行的终端,不会产生新进程
docker cp 容器id:容器内路径 目的主机路径
- 实现容器与本机的相互文件copy
1. 容器 -> 主机
docker cp 容器标识(id/name):容器内资源路径 主机路径
2. 主机 -> 容器
docker cp 主机路径 容器标识(id/name):容器内资源路径
docker commit -m "描述信息" -a "作者" (容器id/name) 镜像名:标签
打包一个容器成镜像
docker save 镜像名:标签 -o 自定义名
保存镜像为一个文件,可以给别人直接用docker load 的方式加载运行
run
docker run [参数] imageid/name
- 新建容器并启动
- 参数
- --name 容器名字
- -d 后台方式运行
- -it交互运行,进入容器查看内容
- -P指定端口
- 主机端口:容器端口
- -v 指定数据卷
- 主机目录 :容器内目录