蟲爺 发表于 2021-4-8 16:58
  
感谢分享
浅谈docker-1
  

文雅而不失响亮 6965

{{ttag.title}}
浅谈Docker
一、什么是容器
容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。开发人员在自己笔记本上创建并测试好的容器,无需任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。
        对于上面的概述,我们可能对容器还是没有一个大概的了解。我们可以理解成操作系统的的进程服务可以通过容器来拉起,如果我们将一个服务封装成容器,当我们想运行服务时,将容器拉起即可。比如我们常用到的抢票系统,在我们需要抢票时需要提交给系统你的姓名,身份证号,车次等信息。将信息填写完成后开始后台执行一次次进行尝试购买车票。整个操作我们可以通过容器来实现,将上面所有的操作封装到一个容器,当我们开始抢票是可以并发运行多个容器替我们去抢票,但在系统看来,其实就是运行了多个服务进行去工作。具体抢票软件是否用到了容器技术,小编也不知道,这个举列只是来帮助大家理解。
二、为什么要用容器
        开发人员在编写代码的时候会遇到各种各样的环境,很可能会导致软件冲突,导致业务存在问题。所以容器的诞生也是为了解决这类问题。容器的诞生就从传统的运输行业找到答案。传统的运输面临的问题是什么?不同的货物因属性不同可能导致损失,如:在运输的途中装卸人员将铁桶放到了水果的上面。后来就有了某公司的发明,无论是什么类型的货物打包放入某公司中,可以保证货物的隔离安全性。Docker 将某公司思想运用到软件打包上,为代码提供了一个基于容器的标准化运输系统。Docker可以将任何应用及其依赖打包成一个轻量级、可移植、自包含的容器。容器可以运行在几乎所有的操作系统上。其实某公司用来封装货物,而容器是用来封装软件。
三、Docker的核心组件
Docker 采用的是 Client/Server 架构。客户端向服务器发送请求,服务器负责构建、运行和分发容器。客户端和服务器可以运行在同一个 Host 上,客户端也可以通过 socket 或 REST API 与远程的服务器通信。
Docker 客户端:最常用的 Docker 客户端是 docker 命令。通过 docker 我们可以方便地在 Host 上构建和运行容器。除了 docker 命令行工具,用户也可以通过 REST API 与服务器通信。
Docker 服务端:Docker daemon 运行在 Docker host 上,负责创建、运行、监控容器,构建、存储镜像。
Docker 镜像:可将 Docker 镜像看着只读模板,通过它可以创建 Docker 容器。
Docker 容器:Docker 容器就是Docker 镜像的运行实例。
Registry:Registry 是存放 Docker镜像的仓库,Registry 分私有和公有两种。
四、常用命令
1.安装docker
(1)在安装docker时,先配置好yum源,小编比较喜欢使用某公司的yum源。访问:mirrors.aliyun.com点击对应的操作系统,会有详细的配置yum源的操作方法。
(2)配置好yum源后可以进行安装并开启服务
2.docker search 命令
当我们想在系统中运行http服务,可以安装http的服务又比较麻烦,我们可以通过docker来运行,运行前,需要通过docker search 命令来去docker hub上查到容器镜像
3.docker pull 命令
找到了心仪的镜像,我们怎么把他下载到本地呢。可以通过docker pull命令进行获取,大家下载时候会发现是一层一层的下载,后面会介绍为什么。
4.docker images  &&  docker image ls 命令
刚刚我们已经下载了http的镜像,那么我们可以通过docker images命令查看本机上又那些镜像,docker images和docker imges ls一样。
5.docker run 命令
-d  后台运行    -p  制定端口,将容器的80端口映射到宿主机的80端口
6.docker ps 命令
通过docker ps命令可以查看当前宿主机上运行了那些容器
7.访问宿主机查看是否提供了http服务
8.当我们想对查看的网页进行修改时,可以进入容器内部进行更改,也可以通过docker cp命令
8.1进入容器内部,修改html内容
通过docker exec -it 可以进入容器内,刷新浏览器,查看网页是否做更改
8.2利用docker cp命令将html拷贝至容器中
刷新浏览器,查看效果
9.docker start/stop/restart 命令
上面也说过,容器是用来封装应用服务,服务需要停止,启动,重启,容器当然也可以实现。
10.docker rm 命令
对于停止的容器,容器属于退出状态,实际中的容器没有被删除,可以通过docker rm进行删除,可以通过docker ps -a查看所有状态的容器。
11.docker rmi 命令
对于没有用的镜像也是占用磁盘空间,可以使用docker rm将无用的镜像删除
12.docker的命令比较多,大家可以通过docker --help查看

       说到这里其实也是介绍了docker的一小部分命令,后面会给大家某公司docker的分层原理,docker的网络,和docker的存储等。小编也不是很懂docker,把知道的都分享给大家,有问题可以随时交流哦~

打赏鼓励作者,期待更多好文!

打赏
4人已打赏

发表新帖
热门标签
全部标签>
每日一问
新版本体验
产品连连看
安全效果
功能体验
标准化排查
GIF动图学习
【 社区to talk】
纪元平台
信服课堂视频
社区新周刊
安装部署配置
流量管理
畅聊IT
技术笔记
上网策略
每周精选
高手请过招
全能先锋系列
答题自测
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
测试报告
日志审计
问题分析处理
每日一记
运维工具
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
排障笔记本
产品预警公告
玩转零信任
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
2023技术争霸赛专题
卧龙计划
华北区拉练
天逸直播
以战代练
秒懂零信任
技术晨报
平台使用
技术盲盒
山东区技术晨报
文档捉虫
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
西北区每日一问
升级&主动服务
高频问题集锦
POC测试案例
云化安全能力
专家说
热门活动
产品动态
行业实践
产品解析
关键解决方案

本版达人

feeling

本周分享达人

新手29676...

本周提问达人