一、初识Docker
架构的标准:SAAS+Docker+K8S
镜像:image 、容器:container
镜像是从什么地方获取?是从docker hub来获取,获取的命令是:pull
以获取hello-world镜像到本地为例:
运行本地镜像命令:
二、获取镜像
在docker中,需要从docker hub获取到镜像,也就是image,然后才可以运行它。docker获取镜像的步骤可以总结为如下:
step1:获取该软件的docker镜像,直接可以进行搜索,比如docker pull nginx;
step2:运行该容器,运行成功后可以启动⼀个容器,nginx服务就运行在该容器里面;
step3:停止容器,删除该镜像。
docker容器式的环境更可以看成是⼀个沙盒的环境,在这个沙盒的环境中,我们可以搭建对应的环境,比如安装⼀ 个centos的操作系统。
获取镜像的命令为:docker pull [imageName:写版本]
如果未写版本,默认是最新的版本
以获取centos:7.8.2003为例:
通过镜像列表:docker images命令,可以查看下载centos:7.8.2003成功!
三、其它
1、进入Linux环境命令:
如果在Linux环境里输入Linux的相关命令,没有成功,就去下载:yum install -y [Linux认可的命令]
2、docker可以实现数据的剥离:
下载好centos:7.8.2003和centos:7.9.2009,在centos:7.8.2003里进行如下操作:
再打开一个控制台操作centos:7.9.2009版本,操作完成后,exit,退出即可,此时回到centos:7.8.2003版本的控制台,进行如下操作:
会发现docker不会保留之前的操作。
四、查看镜像
1、查看所有的镜像信息:docker images
2、查看具体镜像信息:docker images | findstr 仓库名(repository)
Mac和Linux系统使用:grep
Windows系统使用:findstr
3、查看所有镜像的id:docker images -q
4、查看镜像的详细信息:docker image inspect [查看到的镜像id]
五、运行镜像
获取docker的镜像后,就可以运行对应的docker的镜像信息了,运行的命令为run,具体指令总结如下:
-it:开启交互式的命令
--rm:容器退出时删除容器的记录信息
--name:指定容器的名称
-d:后台方式运行容器
-p(小写):指定具体的没有被占用的端口
-P(大写):指定任意没有被占用的端口
以centos:7.8.2003版本为例:
1、--rm:容器退出时删除容器的记录信息
1-1、如果没有--rm指令,会有容器退出时删除容器的记录信息:
1-2、如果有--rm指令,没有容器退出时删除容器的记录信息:
2、--name:指定容器的名称
以nginx服务为例:
3、-p(小写):指定具体的没有被占用的端口
查看容器所占的端口号:docker port Id号
-p80:80意思是,第一个80是电脑的端口号,第二个80是nginx的端口号
访问网址:
4、-P(大写):指定任意没有被占用的端口
六、删除镜像
1、删除镜像
1-1、镜像未运行的删除操作:rmi
以name的方式删除:docker rmi [imageName]
以id的方式删除:docker rmi [imageID]
2、镜像运行的删除操作:rm
镜像运行后在容器中生成一条记录,那么这个删除镜像的逻辑是:
a、查看所有容器运行的记录:docker ps -a (查看某一容器运行的记录:docker ps -a | findstr 名字)
b、停止镜像在容器中的运行:docker stop [containerID]
c、删除镜像:docker rm [containerID]
七、镜像信息修改
1、标记本地镜像到某一仓库:docker tag [image id] [起的imageName:写版本]
删除刚刚修改的内容:
2、标记本地镜像到某一仓库:docker tag [image id] [起的仓库名]