docker管理

docker的镜像管理及容器管理:

1.查看所有的镜像命令:
docker images

2.查看具体的镜像:
windows中的命令:
docker image ls | findstr hello-world
mac&linux的命令:
docker image ls | grep hello-world

3.仅仅展示镜像的ID信息(image id)
docker images -q

4.查看镜像的详细的信息:
docker image inspect feb5d9fea6a5(镜像的ID信息)

5.查看所有镜像的详细信息:
docker image inspect $(docker images -q) #mac和linux的命令

获取docker的镜像后,就可以运行对应的docker的镜像信息了,运行的命令为run,具体指令总结如下:

• -it:开启交互式的命令

• --rm:容器退出时删除容器的记录信息

• --name:指定容器的名称

• -d:后台方式运行容器

• -p:端口映射

6.运行镜像

docker run -it --name centos_test centos:7.8.2003
#docker run ---》运行镜像
-it:交互式命令
--name:指定运行镜像名称
centos:7.8.2003:要被运行的镜像

docker run -it --name centos_test centos:7.9.2009

 

一个镜像被运行后,后称为一个容器

7.使用一个新的控制台,使用命令查看容器运行的记录:
docker ps -a

镜像每次运行一次,都会生成一个容器的记录信息 比如镜像被运行了N次,那么就会有N条容器的记录信息 容器的名称是自定义

 

 

 

8.删除容器的记录信息:
docker rm 容器的ID

 

9.运行完后退出后自动清空运行记录

docker run --rm -it --name centos_test centos:7.9.2009

10.删除镜像

  1.前提条件:镜像没有被运行

 

 

  2.删除镜像:
(1)依据镜像的名称删除:docker rmi  镜像名称

(2)依据镜像的ID来删除:docker rmi 镜像id

2、前提条件:正在运行中的镜像,需要删除,需要做的步骤具体为:
第一步:在容器中停止它的运行:docker stop 容器ID
第二步:在容器中删除它的记录:docker rm 容器ID
第三步:根据镜像的名字或者ID来删除该镜像
           docker rmi 镜像ID
           docker rmi 镜像名称

 

 

11.镜像导入导出的场景:

异地的办公模式,那么场景就是:异地的开发同学写完代码后,然后把自己的

应用程序打包成镜像,打包成镜像后,发送给测试同学,测试同学运行镜像(前

提是把镜像导入中docker中),镜像运行成功后,等于环境部署成功,可以测试

通许可以开始测试了。


开发同学操作:
1、写代码
2、写的代码打包成镜像
A、执行代码的依赖环境(比如写的代码需要在Linux上执行,那么就需要Linux的环境)
B、执行代码本身的环境(比如java的环境需要jdk)
3、把镜像导出

docker image save  hello-world:latest -o /Users/caiying/Desktop/hello.taz

4、发送给测试同学

测试同学操作:
1、接收开发发送的镜像
2、导入镜像到docker中
导入命令:docker image load -i /Users/caiying/Desktop/hello.taz(被导入的镜像存储目录)
#导入镜像成功后输出的信息
e07ee1baac5f: Loading layer 14.85kB/14.85kB
Loaded image: hello-world:latest
3、运行镜像
4、开始测试
 
12.docker run 镜像名称
这个过程可以理解为:把镜像文件创建成docker容器的一部分,然后再进行启动。特别需要注意的是:
容器内的进程必须是前台运行状态,否则容器直接退出
还有一点特别需要提醒的是:docker run 镜像名 如果镜像文件在本地不存在,
就会在线去下载该镜像的资源信息,如:
docker run -it --rm centos
 
13.#容器信息的查看:
#linux
docker ps -a | grep 容器ID
#windows
docker ps -a | findstr 容器ID

14.#查看容器的详细的信息
docker container inspect 容器ID
 
15.查看日志
docker logs -f 容器ID:查看实时的日志文件内容,如果想退出,就需要按ctrl+c
docker logs 容器ID:一次性查看所有的日志文件内容
docker logs 容器ID | tail -10:查看最新的10行日志文件(日志文件最后的内容)#仅仅适用于Linux的系统
docker logs 容器ID | head -10:查看日志文件最前面的10行
 
16.容器的提交解决了什么?
解决了容器中安装的环境,但是必须在容器退出前要进行提交
如果没有提交,那么退出后,安装的环境等于再次安装。
退出vim的步骤:
1、按下esc键
2、按下shift+:
3、:后面输入q!,按下回车键,就会退出
容器提交的步骤:
1、运行镜像,到容器后
2、在容器里面进行具体的操作(比如安装软件,比如搭建环境等等),但是容器千万不能退出
3、打开一个新的控制台,查看到容器的ID
docker ps -a
4、对容器进行提交
docker commit 容器ID 镜像新的名称 如下:
docker commit 1ec76b093759 centos_vim_mysql
sha256:845081b52332f6e6ba6809d06703691b57cdddff4c0c286825097187a6b86e9e
5、待容器提交成功后,之前的容器进行退出
6、查看所有的镜像,就会发现存在centos_vim_mysql的镜像
7、运行新的镜像文件,如
docker run -it --rm centos_vim_mysql
 
17.#修改镜像的名称
docker image tag 003d0acb5726(镜像的ID) centos_vim(镜像的名称) 
1、如果经常名称是none ,那么就不会复制,直接把none的镜像名称修改为新的镜像名称
2、如果镜像名称不是none,那么在此修改,等价于复制 
 
18.#容器的停止和启动
1、获取nginx的镜像:docker pull nginx
2、端口映射:-p 80(宿主机的端口):80(容器里面的端口)
3、后台方式运行容器:
docker run -d -p 80:80 nginx
eede621c9dd01419b85c999dcacb6386790db9a2dbcc3287d020d3cd148738d6
4、查询容器的端口:docker port 容器的ID
docker port eede621c9dd0
80/tcp -> 0.0.0.0:80
5、下面演示容器的停止和启动
localhost:~ liwangping$ docker port eede621c9dd0
80/tcp -> 0.0.0.0:80
localhost:~ liwangping$ docker stop eede621c9dd0
eede621c9dd0
localhost:~ liwangping$ docker port eede621c9dd0
localhost:~ liwangping$ docker start eede621c9dd0
eede621c9dd0
localhost:~ liwangping$ docker port eede621c9dd0
80/tcp -> 0.0.0.0:80

 

 

 

posted @ 2021-12-22 16:13  Cyyy-  阅读(115)  评论(0)    收藏  举报