论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
软件与程序人生
›
DevOps与敏捷开发
›
Devops之Docker:Docker入门
Devops之Docker:Docker入门
诗林
金牌会员
|
2025-3-21 13:12:45
|
显示全部楼层
|
阅读模式
楼主
主题
676
|
帖子
676
|
积分
2028
什么是Docker:
Docker是一个假造化的软件
它简化了开辟和部署软件的过程
它将应用及其所有必要的依赖项、配置文件、系统工具和runtime打包到了一起形成一个image,这个image包含这个应用运行所需要的所有情况。这使得该应用在任何一个装有docker的情况下都能运行
Docker是用来解决什么题目:
在开辟端解决的题目:
这就要说到在使用容器技术之前的开辟流程了:
每一个开辟需要在他们当地的呆板上安装和配置所有服务,在这种情况下,差别的操纵系统的安装流程不一样,而且由于安装过程需要很多步骤,每一步都有可能导致出错。种种这些潜伏的风险会导致开辟在配置开辟情况的时候会很心累,很轻易出错。
如果我们使用Docker的话,那么,对于每一个服务,不管我们使用什么操纵系统,我们可以使用一个下令来启动这个服务(因为对于差别的操纵系统,使用的docker指令是一样的)。可以这么理解,Docker尺度化了我们在开辟情况下运行任何服务的流程。
在部署端解决的题目:
这就要说到在使用容器技术之前的部署流程了:
开辟人员会向运维人员提供Artifacts, 安装引导等。然后,正如在前面提到的开辟端遇到的题目一样,运维在安装情况时也很轻易出错。别的,开辟人员和运维人员之间的沟通交换过程也有可能会出现题目。
如果我们使用Docker的话,开辟人员会将Artifacts及其所有的依赖项打包成一个image,然后,运维人员也可以使用一个指令就能部署到服务器上。
Docker和假造机的对比:
Docker和假造机的重要区别在于它们会假造化OS的差别部分。Docker是将OS Application Layer这一块假造化,所以,我们在运行Docker Container的时候,它是包含OS application layer以及运行在这个层上面的服务和应用(因为Docker Container不包含自己的OS kernel)。而,假造机是会将整个OS都假造化,所以它有自己的OS kernel。
这样的话,Docker实际上还是运行在Linux上的,所以,我们无法只支持Windows的软件打包进入一个Docker Image中。
Docker Images和Docker Containers的对比:
Docker Image:
一个应用的可执行文件
不但包罗APP的源码,还包罗完整的情况配置
还可以添加情况变量,创建文件夹等
Docker Container:
一个Docker Image的一个运行实例
对于一个image,我们可以运行多个containers
如何拉取我们想要的Docker Image:
首先,登录"Docker Hub"(这个是最大的docker image存储地)。然后,在顶部的搜索框中输入我们想要下载的Image名(好比nginx):
在弹出来的窗口中,我们可以看到下载Image的指令(下图右上角),和支持的nginx版本:
接着,假设我们想要下载"1.27.4"版本的nginx的话,我们需要在cmd中输入下面的指令即可:
docker pull nginx:1.27.4
然后就开始下载这个Image了,下载完成后,会出现下图所示的部分:
如果我们想验证该image是否下载乐成,我们可以在cmd中运行"docker images",获得下面的结果:
如何运行某一个Docker Image:
我们以nginx 1.27.4这个docker image为例,在cmd中运行下面的指令:
docker run nginx:1.27.4
然后,我们能看到nginx运行的log:
但是,这个指令会block terminal,如果不想block的话,需要使用下面的指令来更换:
docker run -d nginx:1.27.4
如何检察有哪些containers正在运行中:
在一个新的cmd中,运行下面的指令:
docker ps
运行后,可以看到我们刚才启动的nginx container:
如何停止某一个Docker Container:
我们通过指令"docker ps"获得了正在运行的docker containers,然后,对于想要停止的container(好比12734ffe409b),运行下面的指令:
docker stop 12734ffe409b
运行乐成的话,会返回container id号,如下图所示:
这个时候,我们再运行"docker ps"的话,可以得到下面的结果:
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
诗林
金牌会员
这个人很懒什么都没写!
楼主热帖
【Linux】Ubuntu20.04解决网卡、显卡驱 ...
Adobe2024全家桶win及Mac系统安装包下 ...
Java软件架构师-25个关注点
24年首批!上海通管通报违规app涉及欧莱 ...
【Linux】网络设置(静态/动态/手动/nm ...
小步伐中Java背景调用getAccessToken接 ...
Windows安装mamba全流程(全网最稳定最 ...
Android技能整理:一文秒懂Flutter跨平 ...
OKP绩效管理体系:助力企业实现卓越绩 ...
Kafka(一)利用Docker Compose安装单 ...
标签云
运维
CIO
存储
服务器
浏览过的版块
向量数据库
分布式数据库
图数据库
数据仓库与分析
SQL-Server
程序人生
快速回复
返回顶部
返回列表