安装docker并部署web项目

本文详细介绍了Docker的原理、解决问题、构成及运行流程,重点讲解了在Ubuntu系统上安装Docker的过程,并演示了如何在Docker环境下部署Java Web项目,包括拉取Tomcat镜像、构建自定义镜像、启动容器以及常用Docker命令的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

一.docker简介

1、docker定义:docker是一个用来装应用的容器,就像杯子可以装水,笔筒可以装笔,书包可以放书一样。你可以把“Hello World!”放到docker中,也可以把网站放到docker中,你可以把任何你想到的程序放到docker中。

2、docker思想:

(1)集装箱

(2)标准化 (运输方式、存储方式、API接口)

运输方式(docker鲸鱼负责运输) 

存储方式(不用关心存在哪,存在哪个盘) 

API接口的标准化:Docker提供了一系列的RESTFUL API接口,包含了对Docker也就是对应用的控制,其中包括停止 查看 删除等等

(3)隔离:

最底层的技术实际上是一种linux的一种内核的限制机制,叫做LXC,LXC是一种轻量级的容器虚拟化技术,最大效率的隔离了进程和资源,通过cgroup  namespace等限制隔离进程组所使用的物理资源,如CPU  I/O  Memory等等。

3、docker解决的问题

(1)docker解决了运行环境不一致带来的问题 

(2)docker隔离性,每台服务器相互隔离,互不影响,可以保证自己运行的程序不受其他程序的影响。

(3)一键化部署服务器(例如双11,服务器数量。。。),docker的标准化让快速扩展,弹性伸缩变得简单。

4、docker的构成

 

(1)Build - 构建镜像 - [镜像 类比 集装箱] :

docker镜像就是image。从本质上来说镜像就是一系列的文件(包括应用程序的文件,也包括应用环境的文件),以联合文件系统分层的形式保存到本地;docker中的文件系统都是只读的。

 

(2)Ship - 运输镜像(从仓库和我们的主机上运输)- [仓库 类比 超级码头] :

构建镜像的目的:是为了在其他的服务器,其他的环境运行我们的程序。(为了在其他地方运行,我们就需要将构建的镜像传递到目的地才可以,仓库可以起到传输传递作用。)

传输过程:先将构建的镜像传到docker仓库中,再由目的地去docker仓库将我们的镜像拉过去,这样就完成了传输过程。

docker仓库的提供者:中央服务器

中央服务器地址:hub.docker.com(国际)、c.163.com(国内)

(3)Run - 运行镜像(运行的镜像就是一个容器)- [容器 就是 运行程序的地方] :

Docker容器的本质是一个进程。Docker镜像的每一层都是只读的,而容器作为最上层,是可读可写的。如果程序需要对镜像进行修改,那么Docker会把要修改的镜像文件拷贝到最上层的容器中,然后再进行修改。往后对该文件的访问会优先从容器中读取,寻找文件的顺序是从下往下。

Docker 运行过程: 去仓库把镜像拉倒本地,然后用一条命令把镜像运行起来变成容器!

 

5.docker的运行流程

 

docker执行流程:

(1)docker pull:首先客户端client向Docker daemon发送

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值