Docker学习笔记 docker的基础
docker命令速查表
镜像
- 搜索镜像
docker search 镜像名
docker search 镜像名
- -f/--filter=STARS=* 过滤STARS(收藏)不小于*的
- 获取镜像
docker pull 镜像名:TAG(版本号) - 删除镜像
docker rmi 镜像名:TAG(版本号) - 查看镜像
docker images
docker images
- -a 列出所有镜像
- -q 仅列出所有镜像ID
容器
- 创建并运行容器
docker run [参数] 镜像名:TAG(版本号) - 创建容器
docker create [参数] 镜像名:TAG(版本号) - 运行容器
docker start [参数] 容器名/容器ID - 重新启动容器
docker restart 容器名/容器ID - 停止运行容器
docker stop 容器名/容器ID - 杀死容器进程
docker kill 容器名/容器ID
docker run [参数] 镜像名:TAG(版本号) 参数
- --name 容器名 给容器命名
- -d 后台(守护进程)运行
- -i 交互方式运行
- -t 伪终端
- -v 主机目录/文件:容器目录/文件 挂载目录/文件
- -p(小写) 主机端口:容器端口|容器端口|主机:主机端口:容器端口 映射端口
- -P(大写) 随机端口
- 在使用
docker run -d 镜像创建容器 会停止运行容器- 原因:docker 认为这个容器没有提供服务 所以会停止容器
- 查看运行的容器
docker ps
docker ps
- -a 列出运行的所有容器(包括停止运行的)
- -q 仅列出运行的所有容器ID
- -n=* 列出最近*个运行的容器
- 删除容器
docker rm 容器名/容器ID - 进入容器:
docker exec [参数] 容器名/容器ID 命令
将本机的标准输入(键盘)、标准输出(屏幕)、错误输出(屏幕)附加到一个运行的容器,也就是说本机的输入直接输到容器中,容器的输出会直接显示在本机的屏幕上,如果使用
exit退出容器时会停止运行容器 使用ctrl + p + q退出容器时不会停止运行容器docker attach 容器名/容器ID针对已运行的容器实例进行操作,在已运行的容器中执行命令,不创建和启动新的容器,使用exit退出容器时也不会停止运行容器 推荐使用exec进入容器
- 退出容器 CTRL + D/
exit(退出目前的shell) | CTRL + P + Q(这里是指执行离开的命令吗,按下 CTRL + P + Q 后发生里什么?)
如果是以
docker attach 容器名/容器ID进入容器,那么在使用 CTRL + D/exit退出容器时会停止运行容器
其他
- 使用
docker logs [参数] 容器名/容器ID查看容器日志
docker logs 参数
- -t 显示时间戳
- -f 实时跟踪输出日志
- -n * | --tail * 限制显示最近的 * 条日志
- 使用
docker top 容器名/容器ID查看容器内进程信息 - 使用
docker inspect 容器名/容器ID查看容器信息 - 使用
docker cp 容器名/容器ID:路径/文件 主机路径/文件把文件从容器内拷贝到主机 - 使用
docker cp 主机路径/文件 容器名/容器ID:路径/文件把文件从主机拷贝到容器内
拓展
删除所有
- 容器
docker rm $(docker ps -aq) - 镜像
docker rmi $(docker images -aq)
强制删除
docker rm/rmi -f
- -f 强制删除正在运行的容器/强制删除镜像