Docker之路(二)--用Docker部署一个Web项目

   日期:2024-12-26    作者:nzusb 移动:http://oml01z.riyuangf.com/mobile/quote/51696.html

上一篇,我们已经成功安装好了docker,这一篇,我就要讲一下怎么使用。

还是先说说docker吧。都说docker是一个容器,可是怎么理解这个容器?你必须知道下面三点

  • 镜像(Image
  • 容器(Container
  • 仓库(Repository

1.Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数。
2.镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的 类 和 实例 一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。我们可以自己build镜像,也可以从Docker Hub去拉取很多官方镜像。
3.docker有官方的仓库(第二点的Docker Hub),里面有很多已经构建好的镜像,我们只需要去下载就好了,专业术语就是pull,拉取,当然也有其他仓库地址,也有私有仓库,就是自己构建一个仓库来存储镜像,这些大家可以参考一下官方中文文档,里面也有很多基本命令,我们回归正题。
相信通过上面三点,你对docker正体有了大致的了解,接下来我举个简单的例子,手把手教你部署一个web项目,过程中会介绍一下常用的docker指令。
1.首先,我们用idea创建一个springboot项目。这个我就不详细描述了,创建一个controller

 

server.port设置成8080,然后用maven package打包。当然要在pom文件中设置build参数,不然运行会报错,参考我这篇文章。
2.将打号的jar包扔到linux上去,目录你随意就好,我这里的路径是

 

3.新建一个Dockerfile,注意这里的名字是默认的,一般都不会改它,如果你实在想改名字,build的时候加入-f参数就行。
Dockerfile是一个文本文档,它包含用户可以在命令行上调用的所有命令,并组装一个映像。Dockerfile怎么理解呢,你可以看做是mapper.xml上面那一段声明,固定的,只是参数可以增删而已。

 

创建之后我们vim这个文件,编写一些东西。

 

注意,ADD docker-0.0.1-SNAPSHOT.jar app.jar 这个jar包要跟你自己项目打成的jar包命名要一致。其他参数,我们下回在讲,这不影响我们部署项目。或者大家可以参考这边文章Dockerfile 介绍
接下来看看我们的目录,就两个文件。

 

4.上面我们说到了,要将项目构建成一个镜像,才能被docker容器运行,现在准备工作做好了,我们开始构建。

 
 
 
 

8.一些常用的容器操作
(1)用命令看容器:docker container ls查看当前所有运行的容器

 

(2)对容器的常用操作,前面一个run,还有停止,删除等等。

 

a50就是CONTAINER ID 为:a50708893e01的简写
(3)停止之后的容器怎么查看呢,只需要在ls后面加个参数-a就行了。

 

(4)删除一个容器项目

 

如果容器正在运行想要删除会报错的,这是后再加个参数-f就行了,这时候容器自行会去kill掉


 

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号