分享好友 最新动态首页 最新动态分类 切换频道
docker发布到远程linux,使用docker Maven插件本地构建docker镜像并发布到远程服务器...
2024-12-26 21:09

1.登录网站https://start.spring.io/,生成一个基本的SpringBoot应用。

2.将应用导入Eclipse IDE并创建Application类。目录结构如下

Application代码如下

package com.example.demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

@RestController

public class Application {

@RequestMapping(value="/phone")

public String index(){

return "Hello World!";

}

}

3.在pom.xml文件中增加插件配置

com.spotify

docker-maven-plugin

0.4.12

microservice-eureka-demo

java

["java", "-jar", "/${project.build.finalName}.jar"]

/

${project.build.directory}

${project.build.finalName}.jar

4.pom.xml文件中增加依赖

org.springframework.boot

spring-boot-starter-web

5.配置本地环境变量,设置docker文件构建主机(主机192.168.244.130已经安装完docker环境)

root@ubuntu-02:~# docker -v

Docker version 17.05.0-ce, build 89658be

本地环境变量配置如下

6.进入代码目录,执行命令“mvn clean package docker:build”项目编译成功。

[INFO]

[INFO] --- maven-jar-plugin:2.6:jar (default-jar) @ dockerdemo ---

[INFO] Building jar: C:UsersSeanDownloadsdemodemo argetdockerdemo-0.0.1-SNAPSHOT.jar

[INFO]

[INFO] --- spring-boot-maven-plugin:1.5.4.RELEASE:repackage (default) @ dockerdemo ---

[INFO]

[INFO] --- docker-maven-plugin:0.4.12:build (default-cli) @ dockerdemo ---

[INFO] Copying C:UsersSeanDownloadsdemodemo argetdockerdemo-0.0.1-SNAPSHOT.jar -> C:UsersSeanDownloadsdemodemo argetdockerdockerdemo-0.0.1-SNAPSHOT.jar

[INFO] Building image microservice-eureka-demo

Step 1/3 : FROM java

---> d23bdf5b1b1b

Step 2/3 : ADD /dockerdemo-0.0.1-SNAPSHOT.jar //

---> e1b3c3de711c

Removing intermediate container a9e57b1d9883

Step 3/3 : ENTRYPOINT java -jar /dockerdemo-0.0.1-SNAPSHOT.jar

---> Running in 7a3cdc1d112b

---> 1f800bf8cb24

Removing intermediate container 7a3cdc1d112b

Successfully built 1f800bf8cb24

Successfully tagged microservice-eureka-demo:latest

[INFO] Built microservice-eureka-demo

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESS

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 39.982 s

[INFO] Finished at: 2017-07-23T21:51:21+08:00

[INFO] Final Memory: 42M/393M

[INFO] ------------------------------------------------------------------------

7.ssh连接192.168.244.130,执行命令“docker images”,查看可用的镜像

root@ubuntu-02:~# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

microservice-eureka-demo latest 1f800bf8cb24 23 minutes ago 658MB

8.执行命令“docker run -p 8080:8080 microservice-eureka-demo:latest”,使用镜像microservice-eureka-demo:latest启动docker容器。

root@ubuntu-02:~# docker run -p 8080:8080 microservice-eureka-demo:latest

. ____ _ __ _ _

/\ / ___'_ __ _ _(_)_ __ __ _

( ( )___ | '_ | '_| | '_ / _` |

\/ ___)| |_)| | | | | || (_| | ) ) ) )

' |____| .__|_| |_|_| |___, | / / / /

=========|_|==============|___/=/_/_/_/

:: Spring Boot :: (v1.5.4.RELEASE)

2017-07-23 14:19:21.766 INFO 1 --- [ main] com.example.demo.DemoApplication : Starting DemoApplication v0.0.1-SNAPSHOT on 656842f890d3 with PID 1 (/dockerdemo-0.0.1-SNAPSHOT.jar started by root in /)

2017-07-23 14:19:21.792 INFO 1 --- [ main] com.example.demo.DemoApplication : No active profile set, falling back to default profiles: default

2017-07-23 14:19:22.402 INFO 1 --- [ main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@5a2e4553: startup date [Sun Jul 23 14:19:22 UTC 2017]; root of context hierarchy

2017-07-23 14:19:31.950 INFO 1 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)

2017-07-23 14:19:32.015 INFO 1 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]

2017-07-23 14:19:32.032 INFO 1 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.15

2017-07-23 14:19:32.467 INFO 1 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext

2017-07-23 14:19:32.467 INFO 1 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 10082 ms

2017-07-23 14:19:33.101 INFO 1 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]

2017-07-23 14:19:33.141 INFO 1 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]

2017-07-23 14:19:36.180 INFO 1 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup

2017-07-23 14:19:36.449 INFO 1 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)

2017-07-23 14:19:36.477 INFO 1 --- [ main] com.example.demo.DemoApplication : Started DemoApplication in 17.363 seconds (JVM running for 19.474)

9.执行命令“docker ps”,查看启动的docker容器。

root@ubuntu-02:~# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

08099bd4b8e1 microservice-eureka-demo:latest "java -jar /docker..." 27 seconds ago Up 26 seconds 0.0.0.0:8080->8080/tcp upbeat_borg

10.执行命令“docker exec -it 08099bd4b8e1 bin/bash”,进入docker容器。

root@ubuntu-02:~# docker exec -it 08099bd4b8e1 bin/bash

root@08099bd4b8e1:/#

11.执行命令“ps -ef”,可用查看到docker容器里面启动的进程,即是pom.xml配置文件中配置的插件docker-maven-plugin的entryPoint,java -jar /dockerdemo-0.0.1-SNAPSHOT.jar。

["java", "-jar", "/${project.build.finalName}.jar"]

root@08099bd4b8e1:/# ps -ef

UID PID PPID C STIME TTY TIME CMD

root 1 0 4 14:20 ? 00:00:17 java -jar /dockerdemo-0.0.1-SNAPSHOT.jar

root 34 0 0 14:24 ? 00:00:00 bin/bash

root 41 34 0 14:26 ? 00:00:00 ps -ef

root@08099bd4b8e1:/#

12.至此,使用docker插件构建docker镜像并运行docker容器完成,访问路径“http://192.168.244.130:8080/p...”,获得controller结果

最新文章
Python爬虫工程师有前景吗?薪资多少?北京的工资惊呆我了
现在Python爬虫工程师的薪资大概多少啊?爬虫工程师的前景怎么样?发展方向是什么呢? 熟悉前端、数据库,懂点基本的linux 会各种库爬、解析取页面,会数据存储,会ajax数据爬取,会selenium&#x
淘宝客服专员和淘宝运营专员有什么区别
岗位职责:1.负责淘宝C店/小红书电商平台的日常运营,制定并执行推广计划,提高店铺流量,完成销售目标。2.制定并执行推广方案,包括各种营销工具、活动、促销等,以增加店铺曝光率及品牌知名度。3.分析运营数据,包括流量、转化率、客单价
香港CDN是否需要备案?选择香港高防CDN加速服务的优势解析
新用户专享:「香港/美国云服务器」新购6折 低至9元/月!点击查看活动介绍>>>在当前竞争激烈的商业环境中,企业网络运营常遭遇各种挑战。它们需确保网络运行既高效又稳定,同时还要兼顾安全与用户体验。再加上中国大陆的网站备案规定,使得
高仿和a货抖音橙子建站落地页
2021年06月04日王生抖音小风车,蓝V开通,企业号认证,私信卡片,引流链接,橱窗,跳转微信,在线预约,KS小钥匙,立即预约,升黄金等级,二手车播,橱窗开通 ,二手车直播资质,信息咨询,定位修改,团购达人,电商执照,代办执照抖音团购,小店开通,虚拟号码
高清美女写真一键生成:最强AI绘图工具评测与实用技巧
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个充满社交媒体和视觉内容的时代,大家对美女写真越来越感兴趣。相信很多宝子们都曾幻想
走进水文化⑮∣凝结人类智慧的水工具(二)
水是生命之源,万物之本。中华民族自古就有以水为师、以水为鉴的传统,用水、治水的“水利文明”悠久灿烂,水的哲学思想历久弥新,水的美学文学旷古不衰,细水长流中包含着高深莫测的智慧。下面让我们一同开启水文化探寻之旅,感悟中华水利
福石控股 在 AI 应用领域的表现技术应用与创新: 福石控股 推出了基于 AI 的全链路智能营销平台 FlinkAi,可...
来源:雪球App,作者: 阿九6a6,(https://xueqiu.com/9903221663/316253898)在 AI 应用领域的表现技术应用与创新:推出了基于 AI 的全链路智能营销平台 FlinkAi,可实现策、创、编、发一站式智能营销,具备智能内容创作、智能账号管理和
视频号小店分销模式的深度解析与实战玩法!
在当今数字化时代,社交媒体已不仅仅是人们日常交流的平台,更成为了商家拓展市场、推动销售的重要渠道。其中,视频号小店分销模式以其独特的优势,迅速在电商领域崭露头角,成为众多商家追捧的焦点。视频号小店分销模式,是基于微信视频号
用AI画美女-超逼真写真就在这一刻!
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个数字化与科技迅速发展的时代,越来越多的人开始关注如何利用人工智能生成美丽的图像,
真实推荐!10月呈贡人气楼盘榜出炉,这些小区备受瞩目!
热度排名楼盘名地址价格1鹏欣漫城都荟雨花片区彩云南路与聚贤街路交叉口13500元/平方米2中国滇池花田国际度假区环湖东路斗南湿地公园旁13500元/平方米3春融锦苑和春巷与春融东路交叉路口东南侧待定4卓越滇池晴翠环湖东路与石龙路交汇处(地
相关文章
推荐文章
发表评论
0评