欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Docker快速上手(含实例)

程序员文章站 2022-04-19 11:14:51
...

目录

1. 什么是Docker

2. 容器(Docker)与虚拟机的对比

3. Docker可以做什么

4. Docker的三个基本概念

5. 使用Docker部署微服务项目


1. 什么是Docker

Docker 是一种Linux 容器(Linux Containers,缩写为 LXC)解决方案,我们可以将应用打包到一个可移植的容器中,然后发布到任何Linux机器上,不用担心环境配置问题,实现带环境安装。

 

2. 容器(Docker)与虚拟机的对比

虚拟机也是带环境安装的一种解决方案,但它资源占用多、冗余步骤多、启动慢,而Linux容器具有启动快、资源占用少、体积小的优点,相当于轻量级的虚拟机,能够提供虚拟化的环境,但是成本开销小得多。

 

3. Docker可以做什么

提供一次性的环境。比如,本地测试他人的软件、持续集成的时候提供单元测试和构建的环境。

提供弹性的云服务。因为 Docker 容器可以随开随关,很适合动态扩容和缩容。

组建微服务架构。通过多个容器,一台机器可以跑多个服务,因此在本机就可以模拟出微服务架构。

 

4. Docker的三个基本概念

镜像(Image):用于创建 Docker 容器的模板,可以类比为面向对象中的类。

容器(Container):容器是镜像运行时的实体,容器通过 Docker 镜像来创建,可以类比为面向对象中的类的实例。

仓库(Repository):可看作是一个代码控制中心,用来保存镜像。

 

5. 使用Docker部署微服务项目

5.1.新建一个目录用于存放Dockerfile和微服务项目jar

Docker快速上手(含实例)

 

5.2.将springboot的应用jar包放在该目录

5.3.创建一个Dockerfile放在该目录

#Dockerfile

# 基于哪个镜像
From java:8

# 复制文件到容器
ADD springboot-0.0.1-SNAPSHOT.jar /app.jar

# 声明需要暴露的端口
EXPOSE 8080

# 配置容器启动后执行的命令
ENTRYPOINT ["java","-jar","/app.jar"]

 

5.4.使用当前目录下的Dockerfile创建镜像

docker build -t springboot:0.0.1 .

Docker快速上手(含实例)

 

5.5.通过镜像创建并启动容器

docker run -p 8080:8080 springboot:0.0.1

Docker快速上手(含实例)

 

5.6.访问部署成功的应用

Docker快速上手(含实例)

 

相关标签: 分布式