IDEA推送docker镜像到私服/利用dockerfile-maven-plugin插件在springboot中上传镜像到远程的docker服务器、远程仓库
利用dockerfile-maven-plugin插件在springboot中上传镜像到远程仓库
这篇文章讲解在开发工具中把打包好的jar编译成docker镜像,上传到远程的docker服务器,以及根据镜像创建测试docker容器,验证springboot程序,以及Dockerfile配置
如何生成证书以及docker服务器开启远程端口,参考这篇文章:https://www.cnblogs.com/morgan363/p/12029783.html
1、Windows下配置环境变量
增加三个系统环境变量,在环境变量->系统变量->新建
DOCKER_HOST=tcp://192.168.74.82:2376
DOCKER_CERT_PATH=证书路径
DOCKER_TLS_VERIFY=1
备注:
1)证书路径目录下面有三个证书文件 ca.pem、cert.pem、key.pem
2)DOCKER_HOST中的ip是docker服务器的ip


2、springboot项目使用dockerfile-maven-plugin插件
pom.xml文件
<plugin>
<groupId>com.spotify</groupId>
<artifactId>dockerfile-maven-plugin</artifactId>
<version>1.4.3</version>
<!--<executions>
<execution>
<id>default</id>
<goals>
<goal>build</goal>
<goal>push</goal>
</goals>
</execution>
</executions>-->
<configuration>
<repository>121.42.162.203/${project.artifactId}</repository>
<tag>${project.version}</tag>
<buildArgs>
<JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
<JAR_EXPOSE>8082</JAR_EXPOSE>
</buildArgs>
</configuration>
</plugin>
注:repository属性里的ip要修改成自己的docker服务器ip
springboot项目的根目录新建Dockerfile文件,复制下面的代码

FROM openjdk:8-jre
ARG JAR_EXPOSE=8082
EXPOSE $JAR_EXPOSE
ARG JAR_FILE
ADD $JAR_FILE /app.jar
ENTRYPOINT ["java", "-jar", "-Duser.timezone=GMT+08", "/app.jar"]
3、执行maven命令上传镜像
mvn clean package dockerfile:build -Dmaven.test.skip=true


4、maven命令成功执行后可以在docker服务器看到镜像 docker images

5、docker run这个springboot编译的docker镜像
docker run --name countgame -d -p 8082:8082 6f0d
注:后面的6f0d是image_id,在docker images的后面可以看到
6、docker ps可以看到容器已经启动

7、查看容器启动日志,日志正常
docker logs --tail 300 -f countgame
8、用curl测试程序是否正常,可以看到有内容返回,返回的网页正常
curl http://127.0.0.1:8082/countgame/user/toGame

注:
1.修改了系统变量需要重启开发工具才能生效,一开始提示上传镜像失败,看了错误是上传的ip还是默认的127.0.0.1,重启IDEA或者eclipse就可以了
摘自:https://blog.csdn.net/qq_21187515/article/details/90302026
IDEA推送docker镜像到私服/利用dockerfile-maven-plugin插件在springboot中上传镜像到远程的docker服务器、远程仓库的更多相关文章
- maven推送本地包到私服
前置要求:配置正确的settings.xml maven 推送 本地jar 到私服的命令示例: mvn deploy:deploy-file -DgroupId=com.oracle -Dartifa ...
- Docker中上传镜像到docker hub中
原文参考:https://blog.csdn.net/sk_grace/article/details/81220675 申请Docker hub账号首先在https://hub.docker.com ...
- win10 idea springboot上传镜像到远程docker服务器
1. 开启2375端口,供外部访问docker vim /usr/lib/systemd/system/docker.service 修改ExecStart为下面一行内容 #ExecStart=/us ...
- windows环境下,spring boot服务使用docker打包成镜像并推送到云服务器私有仓库
最近在淘宝上学习springcloud教程,其中有几节课是讲解讲本地springboot服务打包成镜像并推送到云服务器私有仓库,但是教程里面用的事Mac环境,我的是Windows环境,而且课程里面没有 ...
- 『现学现忘』Docker基础 — 41、将本地镜像推送到阿里云
目录 1.准备工作 2.阿里云容器镜像仓库的使用 (1)创建命名空间 (2)创建容器镜像 (3)查看阿里云镜像仓库的信息 3.将本地Docker镜像推送到阿里云 (1)登陆阿里云 (2)给镜像生成版本 ...
- html5利用websocket完成的推送功能(tomcat)
html5利用websocket完成的推送功能(tomcat) 利用websocket和java完成的消息推送功能,服务器用的是tomcat7.0.42,一些东西是自己琢磨的,也不知道恰不恰当,不恰当 ...
- 利用socket.io实现消息实时推送
最近在写的项目中存在着社交模块,需要实现这样的一个功能:当发生了用户被点赞.评论.关注等操作时,需要由服务器向用户实时地推送一条消息.最终完成的项目地址为:socket-message-push,这里 ...
- 苹果推送(APNs)ios push小结
把app删除后就推送不成功了,可以看出deviceToken应该是设备+app来一起识别的,重新安装后仍然为同一个 简介 推送服务APNs(Apple Push Notification servic ...
- VDN For PB Web实现消息推送
利用VesnData.Net(VDN)的互联网数据驱动功能我们实现了PB连接互联网数据库的功能.在互联网开发的过程中我们往往有些消息或者数据希望即时能够通知到各个客户端,现在比较流行的一种技术就是消息 ...
随机推荐
- Anchors Piovt详解
这个两个东西是RectTransform里面的两个属性,也是UGUI做UI自适应的重要工具,之前做的的时候,都只是调出效果即可,并没有深究其中的原理,现在决定来补上这个漏洞. 首选我们来看看Ancho ...
- Flutter Toast消息提示框插件
Flutter Toast消息提示框插件 在开发flutter项目中,想必大家肯定会用到toast消息提示,说到这里, 大家肯定会想到https://pub.dev/ 插件库, 但是插件市场上有太多类 ...
- Redis数据类型读写语法
---字符类型的用法(语法大小写不做限制)1.创建string字符串写:SET 列名 "键值"读:get 列名特性:可以包含任何数据,比如jpg图片或者序列化的对象,一个键最大能存 ...
- Oracle12C安装配置文档
Oracle12C安装配置文档 Oracle12C安装配置文档 准备软件: 开始安装: 打开从官网下载下来的两个压缩包,进行解压 打开解压好的后缀为2of2的文件夹找到路径为database下的“ ...
- intellij idea 无法进行调试的解决方案
inteliij idea 如果出现无法调试该怎样做?debug中各功能为灰色. 如果你用的是外来项目,可能是没有添加这个项目自带的library: 解决办法: 在file->project ...
- 利用ANSI转义序列在控制台输出彩色文字
说明:无论什么语言,只要你的终端能够解释ANSI转义序列(大多数的类unix终端仿真器都能够解释ANSI转义序列,win32控制台则不支持),就能够使用ANSI转义序列输出颜色.这个功能看似鸡肋,但只 ...
- Q200510-03-02: LRU缓存机制
问题: LRU缓存机制运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制.它应该支持以下操作: 获取数据 get 和 写入数据 put . 获取数据 get(key) - 如果 ...
- oracle中创建用户,指定要查询的视图 --九五小庞
--01: 创建PACS用户,并且初始密码为PACScreate user PACS identified by "PACS"; --02: 赋予该用户登录数据库的权限.grant ...
- smbms系统中引用的js文件出现乱码
问题如下显示: 时间显示出现了乱码,找到显示该时间的js文件,定位问题出现的地方. 解决方案: 改变该文件的编码方式,这里的使用了vscode进行改变js文件的编码方式 步骤如下: 使用vscode打 ...
- css的引用关系
总结:离div标签越近,越先被引用 先在同级目录下新建一个stylesheet(是以.css结尾的)注意:link引入进来的css中,class标签也是c1,因为html中div class=c1,因 ...