Docker 速查表
Docker 是一个用于开发、发布和运行应用程序的开放平台。Docker 允许您将应用程序与基础架构分离,从而快速交付软件。使用 Docker,您可以像管理应用程序一样管理基础架构。通过利用 Docker 快速发布、测试和部署代码的方法,您可以显著缩短编写代码和在生产环境中运行代码之间的延迟。在本文中,我将介绍我们所需的 Docker 命令,或者说大多数用例。
生命周期命令
- 创建一个容器(但不启动它):
docker create [IMAGE]
- 重命名现有容器
docker rename [CONTAINER_NAME] [NEW_CONTAINER_NAME]
- 在新容器中运行命令
docker run [IMAGE] [COMMAND]
- 容器退出后移除
docker run --rm [IMAGE]
- 启动容器并保持其运行
docker run -td [IMAGE]
- 启动容器并在容器中创建交互式 bash shell
docker run -it [IMAGE]
- 在容器内创建、启动和运行命令,执行命令后删除容器。
docker run -it-rm [IMAGE]
- 在已经运行的容器内执行命令。
docker exec -it [container]
- 删除容器(如果它没有运行)
docker rm [CONTAINER]
- 更新容器的配置
docker update [CONTAINER]
启动和停止容器
- 启动容器
docker start [CONTAINER]
- 停止运行容器
docker stop [CONTAINER]
- 停止运行容器并重新启动
docker restart [CONTAINER]
- 暂停正在运行的容器中的进程
docker pause [CONTAINER]
- 取消暂停正在运行的容器中的进程
docker unpause [CONTAINER]
- 阻塞容器直到其他容器停止
docker wait [CONTAINER]
- 通过向正在运行的容器发送 SIGKILL 来终止容器
docker kill [CONTAINER]
- 将本地标准输入、输出和错误流附加到正在运行的容器
docker attach [CONTAINER]
Docker 镜像命令
- 从 Dockerfile 创建镜像
docker build [URL/FILE]
- 使用标签从 Dockerfile 创建镜像
docker build -t <tag> [URL/FILE]
- 从注册表中提取镜像
docker pull [IMAGE]
- 将镜像推送到注册表
docker push [IMAGE]
- 从 tarball 创建镜像
docker import [URL/FILE]
- 从容器创建图像
docker commit [CONTAINER] [NEW_IMAGE_NAME]
- 删除图像
docker rmi [IMAGE]
- 从 tar 存档或标准输入加载图像
docker load [TAR_FILE/STDIN_FILE]
- 将图像保存到 tar 存档
docker save [IMAGE] > [TAR_FILE]
Docker容器和镜像信息
- 列出正在运行的容器
docker ps
- 列出正在运行的容器和已停止的容器
docker ps -a
- 列出正在运行的容器的日志
docker logs [CONTAINER]
- 列出 Docker 对象的低级信息
docker inspect [OBJECT_NAME/ID]
- 列出容器中的实时事件
docker events [CONTAINER]
- 显示容器的端口映射
docker port [CONTAINER]
- 显示容器中正在运行的进程
docker top [CONTAINER]
- 显示容器的实时资源使用情况统计
docker stats [CONTAINER]
- 显示文件系统上文件(或目录)的更改
docker diff [CONTAINER]
- 列出所有使用docker引擎本地存储的镜像
docker [image] ls
- 显示图像的历史记录
docker history [IMAGE]
网络命令
- 列出网络
docker network ls
- 删除一个或多个网络
docker network rm [NETWORK]
- 显示一个或多个网络的信息
docker network inspect [NETWORK]
- 将容器连接到网络
docker network connect [NETWORK] [CONTAINER]
- 断开容器与网络的连接
docker network disconnect [NETWORK] [CONTAINER]
感谢您的阅读
希望这些资源对您有所帮助。如果您喜欢本文,并希望了解更多关于系统设计、微服务和其他技术相关的内容……您可以关注我
- Twitter -关注 @vishnuchi
- 在此订阅我的每周新闻通讯。