掌握Docker:从运行到挂载的全面指南

发布于:2025-05-19 ⋅ 阅读:(25) ⋅ 点赞:(0)

1. Docker的运行

docker run -it 容器名字/容器id
示例:
在这里插入图片描述
说明:
docker run -it 中的 -i 和 -t 分别代表什么?

  • -i 参数
    -i 参数代表 --interactive,它用于保持标准输入(stdin)打开,即使没有附加到终端。这使得容器可以与用户进行交互,允许用户通过命令行输入数据或命令。

  • -t 参数
    -t 参数代表 --tty,它用于分配一个伪终端(pseudo-TTY)。这使得容器的输出看起来像是在一个终端中运行,通常与 -i 参数一起使用,以便在交互式会话中提供更好的用户体验。

通常会写作 -it 。

如何退出终端? exit即可退出当前的交互面板。

docker run -itd centos:7
在这里插入图片描述
-d 选项表示以“分离模式”(detached mode)运行容器。将容器作为守护进程运行。这意味着容器将在后台运行,而不会占用当前的终端会话。
此时查看docker ps就可以展示出当前正在运行的容器了。

如果想要退出分离模式,进入可互动模式可以使用下面的命令:
docker exec -it mycentos /bin/bash

值得注意的是如果我们在启动的时候没有指定centos的版本,那么默认docker会选择最新的,没有最新的镜像则会去下载。(centos[:latest])

2. 查看Docker的启动日志

docker ps查看当前正在运行的docker容器
docker ps -a 显示所有容器,包括正在运行的和已停止的。

3. 停止容器

docker stop 容器id
示例:
在这里插入图片描述

小技巧:
为了关闭容器方便,那么我们在启动的时候可以根据参数name进行启动,停止容器的时候可以采用name进行指定停止。
docker run -itd --name=mycentos centos:7
停止容器:docker stop mycentos

小技巧的效果展示:
在这里插入图片描述

4. 容器的启动

docker start mycentos启动
在这里插入图片描述

docker restart mycentos 重启

5. 删除容器

docker rm 容器id ... 可以删除多个容器id,'…‘代表多个容器id
该命令无法删除正在运行中的容器。
如果加上’-f’参数即可删除正在运行的容器。
docker rm -f 容器id
示例:
在这里插入图片描述

6. 查看容器的详细信息

docker inspect 容器id/name

7.一条命令关闭所有容器

docker stop $(docker ps -a -q)
示例:
在这里插入图片描述

拓展

有些linux命令可以学一学

pwd 查看当前所在的目录
cat >123.txt 可以新建一个txt文件并且在控制台往里面输入内容。

cat >123.txt 命令的作用是将标准输入(通常是键盘输入)的内容写入到 123.txt 文件中。如果 123.txt 文件已经存在,> 会覆盖该文件的内容;如果文件不存在,则会创建一个新文件。
>>:将输出追加到文件末尾,而不是覆盖文件内容。

容器的复制(修改数据不会同步)

docker cp 宿主机本地路径 容器名字/ID:容器路径(冒号后面不能有空格)
在这里插入图片描述

可以看到已经成功的导入进去了:
在这里插入图片描述

容器复制到宿主机的命令刚好相反:
docker cp 容器名字/ID:容器路径 宿主机本地路径
注意这两个docker cp命令都是在安装docker的unbuntu操作系统中实现的。

容器的挂载(修改数据可以同步)

宿主机文件夹挂载到容器里:
docker run -itd -v 宿主机路径:容器路径 镜像ID
-v 参数用于将宿主机的目录或文件挂载到容器中,实现宿主机与容器之间的数据共享。

挂载到现有容器

在 Docker 中,可以通过 docker run 命令在启动容器时挂载卷,也可以在容器运行后通过 docker exec 命令在现有容器中挂载卷。例如:

docker run -v /host/path:/container/path my_image

这条命令会在启动容器时将主机上的 /host/path 目录挂载到容器内的 /container/path 目录。


网站公告

今日签到

点亮在社区的每一天
去签到