Docker基本使用
虚拟机:通过虚拟化技术模拟真实的硬件从而创建出来的一台拥有完整功能的逻辑计算机。
Docker容器:docker容器也是一种虚拟化技术,和传统虚拟化不一样的是docker只模拟一个程序最核心的运行环境,所以十分小巧,启动更快。
对比 | 特点 |
---|---|
虚拟机 | 完整的系统功能,隔离性更好,占用空间大(通常以G为单位),运行占用资源较多,启动慢(分钟级启动) |
容器 |
只有程序运行的核心环境,不需要安装直接运行镜像即可,隔离性一般,十分小巧占用空间极小(一般以M为单位),启动快(秒级启动)
|
镜像(image):
docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,tomcat镜像=>run=>tomcat1容器(提供服务器),通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中的)。
容器(container):
Docker利用容器技术,独立运行一个或者一个组应用,通过镜像来创建的。
启动,停止,删除,基本命令!
目前就可以把这个容器理解为就是一个简易的linux系统
仓库(repository):
仓库就是存放镜像的地方!
仓库分为公有仓库和私有仓库!
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest feb5d9fea6a5 16 months ago 13.3kB
tensorflow/tensorflow latest-devel-py3 e3e8e5092607 2 years ago 1.94GB
tensorflow/tensorflow latest-gpu 58a8e83b7dbf 4 years ago 3.36GB
nvidia/cuda latest 52bf259063bf 4 years ago 2.24GB
# 解释
REPOSITORY //镜像的仓库源
TAG //镜像的标签
IMAGE ID //镜像的id
CREATED //镜像的创建时间
SIZE //镜像的大小
# 命令参数可选项
-a, --all # 显示所有镜像 (docker images -a)
--digests #显示镜像的摘要信息(docker images --digests)
-q, --quiet # 仅显示镜像id (docker images -q)
[root@localhost ~]# docker search mysql
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 12966 [OK]
......
# 解释
NAME //镜像仓库源的名称
DESCRIPTION //表示该镜像的功能
STARS //表示下载热度
OFFICIAL //是否docker官方发布
AUTOMATED //自动构建
# 命令参数可选项 (通过搜索来过滤)
--filter=STARS=3000 # 搜索出来的镜像就是stars大于3000的
[root@localhost ~]# docker search mysql --filter=STARS=3000
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 12966 [OK]
mariadb MariaDB Server is a high performing open sou… 4966 [OK]
docker version # 显示docker的版本信息
docker info # 显示docker的系统信息,包括镜像和容器的数量
docker 命令 --help # 帮助命令
使用docker的run参数可以运行一个容器,-i参数表示以交互式模式运行容器,-t参数表示为容器重新分配一个伪终端,这三个参数联合使用,就可以控制Docker容器以交互式来运行。
可以运行该镜像,执行结果如下所示:
上面这种执行方式,会在执行命令后进入Docker容器的终端,从而对Docker镜像进行控制,在执行exit退出后,也会随之关闭该镜像。
Docker镜像后台运行
此外,我们还可以控制Docker镜像在后台运行,此时,我们不能使用-i和-t参数了,而是使用-d参数指定后台运行Docker容器,使用-c参数指定运行容器的命令。
REF
https://blog.csdn.net/weixin_40228200/article/details/124165198
https://www.cnblogs.com/Alone-8712/p/16559119.html
https://www.cnblogs.com/Alone-8712/p/16559119.html
https://m.runoob.com/docker/docker-container-usage.html