Docker:基础概念、常用命令

目录

一、基本概念

1、Docker 和虚拟机技术的不同

2、Docker 的优点

3、基础概念

二、Docker 命令

1、Docker 启动、关闭、查看状态

2、Docker 查看版本、系统信息、帮助

3、镜像 image 查看、搜索、下载、删除

4、容器 新建并启动、进入终端、退出终端

5、容器 查看运行状态、删除

6、容器 启动、重启、停止

7、其他常用命令

三、命令总结


一、基本概念

1、Docker 和虚拟机技术的不同

  • 传统虚拟机,通过虚拟硬件运行完整的操作系统,然后在这个系统上安装和运行软件。
  • 容器内的应用直接运行在宿主机的内容中,容器自身没有内核,也没有虚拟硬件,更轻便。
  • 每个容器间是互相隔离,每个容器内都有一个属于自己的文件系统,互不影响。

2、Docker 的优点

  • 应用更快速的交付和部署。
  • 更便捷的升级和扩缩容。
  • 更简单的系统运维。
  • 更高效的计算资源利用。

3、基础概念

  • 镜像(Image):Docker 将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。
  • 容器(container):镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。
  • DockerHub:DockerHub 是一个 Docker 镜像的托管平台。这样的平台称为 DockerRegistry。
  • Docker 是一个 CS 架构的程序,由两部分组成:
    • 服务端(server):Docker 守护进程,负责处理 Docker 指令,管理镜像、容器等。
    • 客户端(client):通过命令或 RestAPI 向 Docker 服务端发送指令。可以在本地或远程向服务端发送指令。

二、Docker 命令

1、Docker 启动、关闭、查看状态

  • 启动 Docker:systemctl start docker
  • 关闭 Docker:systemctl stop docker
  • 查看 Docker 的运行状态:systemctl status docker

2、Docker 查看版本、系统信息、帮助

  • 查看版本:docker version
  • 显示系统信息(包括镜像和容器的数量等):docker info
  • 帮助命令: docker --help

3、镜像 image 查看、搜索、下载、删除

  • 启动 image:docker run 镜像名
  • 查看所有已安装的 image:docker images
    • 列出所有镜像:-a, --all
    • 只显示镜像的 id:-q, --quiet
  • 搜索 image:docker search 应用名
  • 下载 image(不指定版本,默认下载最新版):docker pull 应用名
  • 下载 image(指定版本,版本必须是 docker 仓库中有的):docker pull 应用名:版本号
  • 删除 image(指定删除):docker rmi -f 镜像id
  • 删除 image(多个删除):docker rmi -f 镜像id 镜像id 镜像id
  • 删除 image(全部删除):docker rmi -f $(docker images -aq)

4、容器 新建并启动、进入终端、退出终端

  • 新建并启动:docker run [可选参数] 镜像名
    • 指定容器名:--name=“容器名”
    • 后台方式运行(没有前台程序运行时,Docker 会直接 kill 后台程序):-d
    • 使用交互方式运行(进入容器查看内容):-it
    • 指定容器的端口:-p
      • 容器端口
      • -p 容器端口
      • -p 主机端口:容器端口 (常用)
      • -p ip:主机端口:容器端口
      • 随机指定端口:-P
    • 进入已经启动的容器(新建终端):docker exec -it 容器id /bin/bash
    • 进入已经启动的容器:docker attach 容器id
    • 停止容器,退出终端:exit
    • 不停止容器,退出终端(快捷键):Ctrl+P+Q

5、容器 查看运行状态、删除

  • 查看运行状态:docker ps
    • 包括运行历史记录:-a
  • 删除指定容器(不能删除正在运行的容器):docker rm 容器id
  • 强制删除运行中容器:docker rm -f 容器id
  • 删除所有的容器:docker rm -f $(docker ps -aq)
  • 删除所有的容器(管道方式):docker ps -a -q | xargs docker rm

6、容器 启动、重启、停止

  • 启动:docker start 容器id
  • 重启:docker restart 容器id
  • 停止:docker stop 容器id
  • 强制停止:docker kill 容器id

7、其他常用命令

  • 显示日志(在终端上打印日志):docker logs -tf --tail 需打印的记录数 容器id
  • 查看容器中的进程信息:docker top 容器id
  • 查看镜像元数据:docker inspect 容器id
  • 拷贝数据:docker cp 容器id:源文件路径 目标路径

三、命令总结

attach

  • Attach to a running container
  • # 当前 she11 下 attach 连接指定运行镜像

build

  • Build an image from a Dockerfile
  • # 通过 Dockerfile 定制镜像

commit

  • Create a new image from a container changes
  • #提交当前容器为新的镜像

cp

  • Copy files/folders from the containers filesystem to the host path
  • #从容器中拷贝指定文件或者目录到宿主机中

create

  • Create a new container
  • #创建一个新的容器,同run,但不启动容器

diff

  • Inspect changes on a container's filesystem
  • #查看docker容器变化

events

  • Get real time events from the server
  • #从docker服务获取容器实时事件

exec

  • Run a command in an existing container
  • #在已存在的容器上运行命令

export

  • Stream thecontents of a container as a tararchive
  • #导出容器的内容流作为一个 tar 归档文件[对应 import ]

history

  • show the history of an image
  • #展示一个镜像形成历史

images

  • List images
  • #列出系统当前镜像

import

  • Create a new filesystem image from the contents of a tarball # 从tar包中的内容创建一个新的文件系
  • 统映像[对应export]

info

  • Display system-wide information
  • #显示系统相关信息

inspect

  • Return low-level information on a container
  • #查看容器详细信息

kill

  • Kill a running container
  • #kill指定docker容器

load

  • Load an image from a tar archive
  • #从一个tar包中加载一个镜像(对应save)

login

  • RegisterorLogin to the docker registryserver
  • #注册或者登陆一个docker源服务器

logout

  • Log out from a Docker registry server
  • #从当前Dockerregistry退出

logs

  • Fetch the logs of a container
  • #输出当前容器日志信息

port

  • Lookupthepublic-facingport whichis NAT-edtoPRIVATE_PoRT
  • 查看映射端口对应的容器内部源端口

pause

  • Pause all processeswithina container
  • #暂停容器

ps

  • List containers
  • #列出容器列表

pull

  • Pull an image or a repository from the docker registry server
  • #docker镜像源服务器拉取指定镜像或者库镜像

push

  • Push an image  or a repository to the docker registry server
  • #推送指定镜像或者库镜像至docker源服务器

restart

  • Restart a running container
  • #重启运行的容器

rm

  • Remove one or more containers
  • #移除一个或者多个容器

rmi

  • Remove one or more images
  • #移除一个或多个镜像[无容器使用该镜像才可删除,否则需删除相关容器才可继续或-f强制删除

run

  • Run a command in a new container
  • #创建一个新的容器并运行一个命令

save

  • Save an image to a tar archive
  • #保存一个镜像为一个tar包(对应load)

search

  • Search for an image on the Docker Hub
  • #在dockerhub中搜索镜像

start

  • Start a stopped containers
  • #启动容器

stop

  • Stop a running containers
  • #停止容器

tag

  • Tag an image into a repository
  • #给源中镜像打标签

top

  • Lookup the running processes of a container
  • #查看容器中运行的进程信息

unpause

  • Unpause a paused container
  • #取消暂停容器

version

  • Show the docker version information
  • #查看docker版本号

wait

  • Block until a container stops, then print its exit code
  • #截取容器停止时的退出状态值

  • 9
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值