栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

容器云及其使用

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

容器云及其使用

目录

文章目录

一、Docker的简介

二、Docker组成部分

三、Docker的使用

1.容器的使用

2.实例


一、Docker的简介

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。

以下是关于Docker的思维导图:


二、Docker组成部分

一个完整的Docker有以下几个部分组成:

    DockerClient客户端
    Docker Daemon守护进程
    Docker Image镜像
    DockerContainer容器


三、Docker的使用

1.容器的使用

在运行容器之前要处理好镜像问题

(1)运行容器
运行第一个容器,执行以下命令。

[root@master~]# docker run-it--rm-d-p 80:80 nginxlatest
5d42a9fafeb60064d3d9f764de57d2eb2b51f58b1d7blc37020674c1bc08e4bb


参数说明:
-i:交互式操作。
-t:终端。
-rm:容器退出后随之将其删除,可以避免浪费空间。
-p:端口映射。
●-d:容器在后台运行。
其过程可以简单的描述为:
①下载Nginx镜像。
②启动容器,并将容器的80端口映射到宿主机的80端口。
当使用dockerrun来创建容器时,Docker在后台运行的标准流程如下:
①检查本地是否存在指定的镜像,不存在就从公有仓库下载。
②利用镜像创建并启动一个容器。
③分配一个文件系统,并在只读的镜像层外面挂载一层可读写层。
④从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中去。
⑤从地址池配置一个IP地址给容器。
⑥执行用户指定的应用程序。
接下来可以通过浏览器验证容器是否正常工作。在浏览器中输入地址http//hostIP验证

启动容器的语法如下:
# docker start[CONTAINERID
例如,启动所有的Docker容器:
# docker start $(docker ps -aq)

(2)操作容器
列出运行中的容器。
# docker ps
# docker container ls
列出所有容器(包含终止状态)。
# docker ps -a
查看具体容器的信息。

# docker inspect [container ID or NAMEST

查看容器的使用资源状况。
# docker stats [container ID or NAMES
查看容器日志。
# docker logs [OPTIONS][container ID or NAMES
OPTIONS 说明:
--details:显示更多的信息。
-f--follow:跟踪实时日志。
--sincestring:显示自某个timestamp之后的日志,或相对时间,如 42分钟。
--tailstring:从日志末尾显示多少行日志,默认是all。
-t,--timestamps:显示时间戳。
--untilstring:显示自某个timestamp之前的日志,或相对时间,如42分钟。
进入容器。
# docker exec-it[CONTAINER ID] bash
进入容器后,输入exit或者按Crtl+C键即可退出容器,示例代码如下:
[root@master~]#docker exec-it 5d42a9fafeb6 bash
root@5d42a9fafeb6:/#exit
exit

(3)终止容器
删除终止状态的容器。
# docker rm[CONTAINER ID]
删除所有处于终止状态的容器。
# docker container prune
删除未被使用的数据卷。
# docker volume prune
删除运行中的容器。
# docker rm-f[CONTAINER ID]
批量停止所有的容器。
# docker stop $(docker ps-aq)
批量删除所有的容器。

# docker rm $(docker ps -aq)
终止容器进程,容器进入终止状态。
# docker container stop[CONTAINER ID(4)导入/导出容器
将容器快照导出为本地文件,语法如下:
# docker export[CONTAINER ID]>[tar file]
例如:
root@master~]# docker export 5d42a9fafeb6>nginx.tar
[root@master~]# 11
total 125320
-rw-r--r--1 root root 128326656 0ct 31 01:24 nginx.tar
同样的,也可以把容器快照文件再导入为镜像,语法如下,
# cat [tar file]| docker import-[name:tag
例如:

[root@master~]# cat nginx.tardocker import-nginxtest
sha256:c1668cd482c7e86a231f718d673c2c4a293ad75ea49ac3f3f4b75dfee42b3e2f
[root@master~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE 
nginx test c1668cd482c7 3 seconds ago 125MB 
nginx latest 540a289bab6c 8 days ago 126MB 

使用dockerimport命令导入一个容器快照到本地镜像库时,将丢弃所有的历史记录和
元数据信息,即仅保存容器当时的快照状态。

2.实例

查看镜像列表:

 使用版本为2.2.31的http镜像来运行容器:

强制删除本地镜像swarm :

查看运行中的容器:

 查看所有的容器

 

 进入容器的两种方法(使用版本为2.2.31的http镜像来运行容器):

 使用镜像(busybox镜像)创建一个临时的容器:

 使用镜像(busybox镜像)创建一个一直后台运行的容器:

暂停httpd:2.2.32运行中的容器:

开启httpd:2.2.32运行中的容器 :

 重启httpd:2.2.32运行中的容器:

 创建一个nginx的容器,设置这个容器的参数,当容器因某种错误而停止运行时,能自动重启:

 恢复暂停httpd:2.2.32运行中的容器:

 删除某一个已经不运行的容器:

 批量删除所有已经退出的容器:

参考图片:以上图片均为博主本人进行的实验

参考文档:百度

有什么问题欢迎提出

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/882632.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号