Docker简略

本文介绍了Docker的基础知识,包括术语如Image、Container和Volume,以及常用命令如启动Docker、管理镜像和容器。Dockerfile用于自定义镜像,通过构建过程创建所需镜像。此外,还讲解了数据卷的使用和容器的日志查看。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker简略

术语

Image

镜像就是一个打包好的文件系统(相当于Java中的类)。一个打包好的Docker镜像是一个迷你的操作系统,仅仅包含运行某个(或者某些)应用的必要依赖。

Image采用分层打包,每层有各自的组件,底层是运行操作系统的最小集合。再往上是某些依赖库的一个个集合。再往上是运行某些软件的集合。采用分层打包是为了方便扩展以及修改,当Image中的某些组件需要升级或者替换时,可以保持其他集合不变。

Container

容器,一个运行镜像的实例(相当于Java中的对象

Volume

一个文件系统,可以将容器中的文件系统映射到本地机器上。

命令

启动docker

systemctl start docker

帮助命令

docker version
# 查看docker的版本
docker info
# 查看docker信息
docker 命令 --help
# 查看指定docker命令的信息

镜像命令

基础操作
docker images
# 查看本地所有镜像
docker search 容器名
# 搜索容器名
docker pull container-name[:tag]
# 下载
docker -f rmio 镜像id | 镜像name
# 删除镜像
docker image rm 镜像id
创建镜像
docker commit 	-m="description" -a="author"	容器id	目标镜像名:[TAG]

容器命令

查看容器
docker ps [可选参数]
# 列出正在运行的容器
# -a:列出所有容器,包括未运行的容器
# -q:只列出容器id
docker inspect 容器id | 容器name
# 查看运行中容器进程信息

运行容器
docker run [可选参数] image-name --name container-name
# 新建容器并启动,器名为container-name, 容器的执行镜像为image-name,如果本地不存在该镜像,自动从仓库中下载。
# -d 以后台方式运行:dameon
# -p 指定端口映射:port
# -p 外部端口:内部端口
# -P 随机指定外部端口
# e 传递参数
docker start 容器id | 容器name
# 开启容器,可以用容器id或者name
# 也可以用stop,restart,kill等停止,重启,强制停止容器。
进入容器
docker exec -it 容器id | 容器name /bin/bash
# 以交互界面进入容器, 可以输入容器id也可以输入容器名。 
# /bin/bash 表明要进入的shell是/bin/bash
退出容器
ctrl + P + Q 
# 容器不停止退出
exit
# 退出容器
常用命令
docker logs -t 容器id
# -t :带时间戳
# -n :打印最近的n行日志
docker cp 本地路径 容器id:容器内路径
删除容器
docker remv 容器id | 容器name
# 删除容器

数据卷命令

数据卷映射
docker run -d -v 本地目录:容器目录	容器id
# 将容器内的目录挂载到指定本地目录,具名挂载
docker run -it -v  容器目录	容器id
# -i interactive
# -t tty
# 将容器内目录挂载到本地目录,不指定本地目录,匿名挂载

DOCKERFILE

自定义镜像配置文件,通过自己写DOCKERFILE,制作想要的镜像。

创建镜像过程

  • 编写dockerfile
  • docker build 构建镜像
  • docker push 发布镜像

语法规则

  • FROM 指定基文件
  • MAINTAINER author<email>

具体文件

FROM centos
MAINTAINER author<email>

ENV MYPATH /usr/local
WORKDIR $MYPATH

RUN yum -y install vim

EXPOSE 80
CMD /bin/bash

构建命令

docker build -f mydockerfile-centos -t mycentos:0.1 
<think>好的,用户想知道如何查看已安装的Docker版本。首先,我需要确认用户的需求是检查Docker的版本信息,这可能包括客户端和服务器的版本。根据Docker的常用命令,通常使用`docker version`来获取版本信息。不过,有时候用户可能只需要简略信息,这时候可以用`docker --version`。 接下来,我需要回忆Docker命令的具体用法。记得`docker version`会显示详细的版本信息,包括Client和Server两部分。如果用户的系统没有正确安装Docker或者Docker守护进程没有运行,Server部分可能会显示错误。这时候可能需要检查Docker服务状态,比如使用`systemctl status docker`,这部分在引用[1]中提到过,可以引用。 另外,用户可能需要区分客户端和服务器版本,特别是在开发环境中,两者版本不一致可能会导致兼容性问题。所以解释命令输出的不同部分是有必要的。同时,如果用户只想要简略版本,使用`docker --version`会更直接。 还需要考虑用户可能的后续问题,比如如何启动Docker服务,或者如何安装Docker,但根据当前问题,只需专注于版本检查即可。确保给出的命令正确,并且步骤清晰,用户能按步骤操作。 最后,生成相关问题时要围绕Docker的版本、安装、服务管理等方面,帮助用户扩展相关知识。例如,如何安装特定版本的Docker,如何检查运行状态,这些都是用户可能接下来会问的问题。</think>要查看已安装的Docker版本,可通过以下命令实现: ### 方法1:查看完整版本信息 执行命令: ```bash docker version ``` 输出包含**客户端(Client)和服务端(Server)**的详细版本信息,例如: ``` Client: Docker Engine - Community Version: 20.10.12 ... Server: Docker Engine - Community Engine: Version: 20.10.12 ``` *若Server部分未显示,说明Docker服务未启动,需先运行`systemctl start docker`[^1]* ### 方法2:查看简略版本 执行命令: ```bash docker --version ``` 输出示例: ``` Docker version 20.10.12, build e91ed57 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值