您的位置:首页 > 汽车 > 新车 > 广州网站推广团队_国内新冠最新消息_杭州关键词优化服务_360免费建站

广州网站推广团队_国内新冠最新消息_杭州关键词优化服务_360免费建站

2024/11/15 1:26:25 来源:https://blog.csdn.net/qushaming/article/details/142520587  浏览:    关键词:广州网站推广团队_国内新冠最新消息_杭州关键词优化服务_360免费建站
广州网站推广团队_国内新冠最新消息_杭州关键词优化服务_360免费建站

目录

一、帮助命令

1.1. version 显示docker版本信息 

1.2. info 显示docker信息 

1.3. help帮助命令

二、镜像命令

2.1. images 查看所有本地镜像

2.2. search 搜索镜像

2.3. pull 下载镜像

2.4. rmi 删除镜像 

2.5. rm 用完即删 

2.6. inspect 查看镜像元数据 

三、容器命令 

3.1. 新建容器并启动 

3.2. exit 从容器中退回主机 

3.3. ps 列出当前正在运行的容器 

​3.4. 退出容器

 3.5. 删除容器

3.6. 启动/停止容器

3.7. logs 查看容器日志

3.8. top 查看容器内部进程信息 

3.9. exec 进入正在运行的容器 

3.10. 容器——主机文件拷贝


Docker官方文档 命令使用查看

https://docs.docker.com/reference/cli/docker/

本章节通过带着大家实操一些Docker的常用命令,来加深对Docker的理解,同时这些命令也是日常工作中使用频率最高的。 

一、帮助命令

1.1. version 显示docker版本信息 

#显示已安装docker的版本信息
docker version

1.2. info 显示docker信息 

# 显示docker的系统信息,包括镜像和容器的数量
docker info 

1.3. help帮助命令

# 帮助命令
docker 命令 --help 

二、镜像命令

2.1. images 查看所有本地镜像

# 查看所有本地主机上的镜像
docker images 
部分可选项:-a, --all  列出所有镜像-q, --quiet  仅显示镜像的ID

镜像显示字段介绍

REPOSITORY

镜像仓库源
TAG镜像的标签
IMAGE ID镜像的id
CREATED镜像的创建时间
SIZE镜像的大小

2.2. search 搜索镜像

# 搜索镜像(这里搜索mysql的镜像)
docker search mysql
-f, --filter  添加过滤条件
# 搜索星标为3000的mysql
docker search mysql --filter=STARTS=3000

2.3. pull 下载镜像

镜像仓库地址:

https://image.cgdcgd.cc/_/nginx

# 下载mysql镜像到本地
docker pull mysql 

默认的tag是latest即最新版,想要追加指定版本:

docker pull nginx:版本号 

2.4. rmi 删除镜像 

根据镜像ID删除指定镜像

删除images命令查出来的所有镜像 

2.5. rm 用完即删 

使用--rm参数后,从仓库拉取镜像启动后,tomcat容器启动完毕后,后续停止使用tomcat容器会被自动删除,镜像还在。

# 想要用完立即删除容器,临时测试使用,可以增加参数--rm
docker run -it --rm tomcat:9.0

2.6. inspect 查看镜像元数据 

Docker镜像元数据是指存储在Docker守护进程中关于镜像的信息,它包括镜像的ID、标签、大小、创建时间和所有者等信息。

docker inspect 镜像id

三、容器命令 

有了镜像才可以创建容器,下面我们通过在本地Linux环境下下载一个centos镜像来进行操作练习

# 下载centos镜像
docker pull centos

3.1. 新建容器并启动 

docker run [可选参数] image

可选项:

  -d, --detach  后台方式运行镜像容器

  -i, --interactive  即使没有连接也要保持打开

  -p, --publish list 指定容器的端口

        -p ip: 主机端口:容器端口

        -p 主机端口:容器端口 常用

        -p 容器端口

  -P, --publish-all  随机指定端口

  -t, --tty  分配一个虚拟终端

i和t通常结合使用,进入容器交互运行

# 启动并进入容器
docker run -it centos /bin/bash

我们可以对比下进入容器前和没进入前,Linux根目录下的区别:

查看对比发现,容器内的centos相对而言属于基础版,很多命令是不完善的。

3.2. exit 从容器中退回主机 

exit

3.3. ps 列出当前正在运行的容器 

docker ps

可选项:

-a, --all  列出当前正在运行的容器+带出历史运行过的容器
-n, --last int  显示最近创建的容器
-l, --latest  显示最近创建的容器
-q, --quiet 仅显示容器的id

显示最近创建的一个容器: 

 3.4. 退出容器

exit 直接停止容器并退出

Ctrl+P+Q 容器不停止退出

 3.5. 删除容器

# 删除指定容器,不能删除正在运行的容器,如果要删除必须要加-f
docker rm 容器id
# 删除所有容器
docker rm $(docker ps -aq)
# 删除所有的容器
docker ps -a -q|xargs docker rm

注:xargs命令‌的作用是将标准输入转换为命令行参数,常与管道配合使用,解决了大多数命令不接受标准输入作为参数的问题。它能够将标准输入的数据作为命令的参数,从而扩展了命令的功能和使用场景。xargs命令在Linux中非常有用,尤其是在处理大量数据或自动化任务时,它可以将一个命令的输出作为另一个命令的输入,实现数据的流转和处理。

3.6. 启动/停止容器

# 启动容器
docker start 容器id
# 重启容器
docker restart 容器id
# 停止当前正在运行的容器
docker stop 容器id
# 强制停止当前正在运行的容器
docker kill 容器id

3.7. logs 查看容器日志

docker logs -f -t --tail 10 容器id

可选项:
  -f, --follow  跟踪时时日志       
  -n, --tail string  显示要查看的日志总行数
  -t, --timestamps  显示时间戳

3.8. top 查看容器内部进程信息 

docker top

每一列的含义如下:

UID:运行进程的用户ID。

PID:进程ID。

PPID:父进程ID。

C:CPU使用率。

STIME:进程启动时间。

TTY:终端ID。

TIME:运行时间。

CMD:启动进程的命令。

3.9. exec 进入正在运行的容器 

docker exec -it 容器id /bin/bash
docker attach -it 容器id /bin/bash

exec和attach两者的区别

docker exec:进入容器后开启一个新的终端,可以在里面操作(常用)

docker attach:进入容器正在执行的终端,不会启动新的进程

docker run和exec的区别

docker run:创建一个新的容器并运行一个命令。

docker exec:在运行中的容器中执行命令。

主要区别在于它们的使用场景:

  • 使用 docker run 来启动一个新容器,并在此过程中运行一个命令。这适用于启动新应用程序或服务。

  • 使用 docker exec 在一个已经运行的容器中执行额外的命令。这适用于进入容器内部进行操作或调试。

使用 docker run 运行一个新的 Ubuntu 容器并启动 bash shell:

docker run -it ubuntu /bin/bash

使用 docker exec 在已运行的容器中执行命令。例如,如果你有一个运行中的容器名为 my_container,你想在其中运行 ls 命令,可以使用:

docker exec my_container ls

注意:确保容器在使用 docker exec 命令之前是运行状态。如果容器不在运行状态,可以使用 docker start 命令先启动容器。

3.10. 容器——主机文件拷贝

docker cp 容器id:文件在容器中的路径 主机路径

拷贝是一个手动的过程,后续章节我们学了"卷"的技术后,就可以实现容器之间以及容器与主机间的数据共享。

本章节内容到此结束,下一章节将讲解常用软件(Nginx、Tomcat、ES等)在docker中的安装。

后续内容会每天持续更新中……

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com