IDC知识库
IDC领域专业知识百科平台
首页 > 云服务器知识

云服务器知识如何在docker容器中部署应用

    • 企业邮箱 全新登场
    • 虚拟主机
    • 云服务器

    如何在docker容器中部署应用?docker是开发者的开放平台,容器是可扩展的,可更安全的使用和部署。Docker容器能够共享一个内核并共享应用程序库,这里介绍在Docker容器中部署简单的Spring Boot应用。

    一个简单的Hello World应用。

    1.1 Maven依赖

    <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.4.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
    </parent>

    引入spring-boot-starter-web来创建一个Web应用。

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    </dependency>
    
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
    </dependency>
    
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    1.2 主应用程序

    @SpringBootApplication
    public class FirtSpringBootApplication {
    
    public static void main(String[] args) {
    SpringApplication.run(FirtSpringBootApplication.class, args);
    }
    }

    1.3 服务接口

    RESTful服务接口:

    @RestController
    public class HelloController {
    @RequestMapping("/hello")
    public String hello() {
    return "Hello World";
    }
    }

    2 安装Docker,安装完毕后,Docker环境的虚拟IP是192.168.99.100。

    3 部署应用

    3.1 Spring Boot应用打包

    在Spring Boot应用工程目录下执行mvn 打包命令:

    mvn package spring-boot:repackage

    工程的target目录里生成了一个jar包 firtSpringBoot-0.0.1-SNAPSHOT.jar。将jar包更名为firtSpringBoot-1.0.jar上传到Docker环境里。

    3.2 Dockerfile文件

    Dockfile原则上是一个批处理文件,包含了构建镜像的命令。将这些命令放入文件中并不是绝对必要的,因为我们可以将它们传递到命令行,只是使用文件更简单一些。

    现在创建一个Dockerfile:

    FROM alpine:edge
    MAINTAINER peterwanghao.com
    RUN apk add --no-cache openjdk8
    VOLUME /tmp
    ADD firtSpringBoot-1.0.jar firtSpringBoot.jar
    EXPOSE 8080
    ENTRYPOINT ["java","-jar","/firtSpringBoot.jar"]

    3.3创建镜像

    在Dockerfile文件目录下运行docker build命令,这将下载基镜像并一条接一条地运行Dockerfile文件中的条目。创建的镜像的名字是first,标签1.0。–rm=true,在整个构建过程成功后删除中间环节的容器。

    $docker build -t first:1.0 --rm=true .

    使用docker images命令列出所有的镜像和它们的详细信息。

    docker@default:~/first-spring-boot$ docker images
    REPOSITORY TAG IMAGE ID CREATED SIZE
    first 1.0 02f67d8c308d 17 hours ago 119MB
    hello-world latest e38bc07ac18e 6 weeks ago 1.85kB
    alpine edge 5c4fa780951b 4 months ago 4.15MB

    3.4 运行容器

    接下来,我们将运行容器。使用下面的命令加载并运行容器。

    docker run --name=first -p 8080:8080 -t first:1.0

    使用docker ps命令列出正在运行的容器

    docker@default:~/first-spring-boot$ docker ps
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    9fc3aef6e852 first:1.0 "java -jar /firtSpri 5 hours ago Up 5 hours 0.0.0.0:8080->8080/tcp first

    测试访问

    教程作者:RaiseHead

    原文链接:https://www.jianshu.com/p/94e8dbba5d1d

    西部数码容器云产品是通过docker技术,在云计算集群服务器上部署容器云服务实现,功能强大、简单易用,可作集群服务,自由搭建私有网络,轻松组建服务集群。

    高性价比的容器云产品链接 https://www.west.cn/paas/container/

    声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » 如何在docker容器中部署应用
    • 日销500+
      基础型云服务器

      2核CPU

      2G内存

      50G硬盘

      2M带宽

      独立IP

      分布式存储

      适合企业官网、个人站长类网站

      ¥106 原价¥116

    • 日销500+
      超值型云服务器

      2核CPU

      4G内存

      50G硬盘

      2M带宽

      独立IP

      分布式存储

      适合企业官网、行业门户类网站

      ¥156 原价¥171

    • 日销500+
      通用型云服务器

      4核CPU

      4G内存

      50G硬盘

      2M带宽

      独立IP

      分布式存储

      适合电商、论坛类网站

      ¥203 原价¥223

    分享到:更多 ()
      • 企业邮箱 全新登场
      • 虚拟主机
      • 云服务器

      评论 抢沙发

      • 昵称 (必填)
      • 邮箱 (必填)
      • 网址

      中国领先的互联网域名及云服务提供商

      为您提供专业域名知识,域名交易知识,云服务器知识,虚拟主机知识讲解

      域名注册云服务器