欢迎光临
我们一直在努力

docker快速使用

这篇文章主要是建立在已经搭建了docker的服务器上。我们如何使用docker来创建自己的容器,并在容器内进行编译工作。
因为看讲解原理的贴已经写的很详细很好了,但是好像很多时候公司用,并不需要那么多,只是需要快速使用。那么这篇文章就很适合。

1 查看本地主机的镜像

docker images

在这里插入图片描述

是 Docker 的一个核心命令,用于列出本地主机上存储的所有 Docker 镜像。本地主机:Docker守护进程所在的物理服务器。

Docker 采用的是 客户端-服务器(C/S)架构

  • Docker 命令只是客户端:你输入的 docker images 只是一个命令行工具(CLI),它本身不做任何实际工作。
  • 真正干活的是守护进程:服务器上运行着一个系统级的后台服务 dockerd(Docker daemon),它以 root 权限运行,统一管理整台服务器的所有镜像、容器、网络等资源。
  • 所有用户连接同一个后台:无论你用 liudinghua 还是 liwen 登录,你们的 docker 命令都会通过 Unix socket(默认 /var/run/docker.sock)连接到同一个 dockerd 进程。
  • 数据存储是全局的:所有镜像实际存储在共享的系统路径下(通常是 /var/lib/docker),不区分用户。
  • docker不像传统软件每个用户独立安装在自己的 ~/ 目录下,Docker 是系统级服务,它的资源是全局共享的。这带来了便利(镜像只需下载一次),但也需要注意安全风险(用户能操作他人的容器)。

    简单说:docker images 显示的永远是 整台服务器 的镜像列表,不是某个用户的私有列表。

    2 创建基于某个镜像的容器

    docker run [可选参数] image

    docker run [可选参数] image #启动容器(无镜像会先下载镜像)
    其中:image镜像名称(必须项)
    ————————————————————-
    –name = "Name" 容器名字
    -c 设置CPU权重
    -d 以后台方式运行并且返回ID(不占用当前终端),启动守护进程式容器
    -i 使用交互方式运行容器(保持STDIN打开),通常与t同时使用
    -t 为容器重新分配一个伪输入终端。也即启动交互式容器
    -v 给容器绑定挂载

    因为我已经创建了容器,所以不再演示。

    示例:
    docker run -it –name test3588 -v /home/test/:/workspace app/sdk-rk3588:1.0
    解释:
    docker run —-创建并运行一个新容器
    -i—-交互模式:保持容器的标准输入打开,可以输入命令
    -t—-分配伪终端(tty) 让容器内的命令行支持光标、颜色等终端功能
    -it-组合参数:让你在容器内能像正常终端一样操作
    –name test3588 —- 给容器取名为test3588
    -v /home/test/:/workspace –卷挂载,把主机的/home/test/目录映射到容器内的/workspace目录
    app/sdk-rk3588:1.0 — 使用的镜像,基于这个镜像创建容器

    3 查看容器状态

    查看所有正在运行的容器:docker ps
    查看所有容器状态: docker ps -a

    在这里插入图片描述

    4 启动容器命令

    启动容器,但不进入容器: docker start 容器名
    启动并进入容器:docker start -ai 容器名
    进入已经启动的容器:docker exec -it 容器名 bash

    5 退出容器

    直接输入exit

    在这里插入图片描述

    这个命令直接退出容器有两种情况,取决于你打开容器的方式:

    ​1 使用 “ docker start 容器名 ” + “ docker exec -it 容器名 bash ” 这两个命令打开的容器,退出时使用exit 命令, 并不会直接停止运行容器,只是让你退出了容器终端,回到最初的终端。如需要停止运行终端,则还需输入:”docker stop 终端名“ 命令。
    ​原因:因为docker exec 是在已经运行的容器内,新开一个bash会话,所以exit退出时,只是退出了这个新开的对话,主bash进程还在运行,所以容器保持运行状态

    ​2 使用 “docker start -ai 容器名” 命令打开的容器,退出时使用 exit 命令可以回到最初的终端并停止运行容器,但长期运行的服务,也是只会断开连接。。

    在这里插入图片描述

    使用 docker stop 容器名 停止运行容器

    6 删除容器

    删除已经停止运行的容器: docker rm 容器名

    删除所有停止运行的容器:docker container prune

    强制删除容器:docker rm -f 容器名

    赞(0)
    未经允许不得转载:171主机测评 » docker快速使用
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址