springboot工程

我们在这里找了一个原来的项目工程,项目结构如下:

Dockerfile文件编写

FROMjava:8

VOLUME/tmp

ADDjwordpress-web.jarweb.jar

ENTRYPOINT["java","-Djava.security.egd=file:/dev/./urandom","-jar","/web.jar"]

VOLUME 指定了临时文件目录为/tmp。其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp。该步骤是可选的,如果涉及到文件系统的应用就很有必要了。/tmp目录用来持久化到 Docker 数据文件夹,因为 Spring Boot 使用的内嵌 Tomcat 容器默认使用/tmp作为工作目录  项目的 jar 文件作为 “app.jar” 添加到容器的  ENTRYPOINT 执行项目 app.jar。为了缩短 Tomcat 启动时间,添加一个系统属性指向 “/dev/urandom” 作为 Entropy Source

制作镜像并发布到阿里云私有仓库

方法一:本地利用docker命令

Maven install

INFO] ------------------------------------------------------------------------

[INFO] Reactor Summary:

[INFO]

[INFO] jwordpress-parent .................................. SUCCESS [ 0.215 s]

[INFO] jworpdress-web ..................................... SUCCESS [ 2.308 s]

[INFO] jwordpress-admin ................................... SUCCESS [ 0.035 s]

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

[INFO] BUILD SUCCESS

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

[INFO] Total time: 2.852 s

然后到target 目录下看是否生成了jar文件

然后将jwordpress-web.jar和Dockerfile 放在同一个文件下。执行下面命令 `` docker build -t jwordpress:web-1.0.3.RELEASE .

liuhaihua@liuhaihuadeMacBook-Pro target % docker build -t jwordpress:web-1.0.3.RELEASE .

Sending build context to Docker daemon 51.81MB

Step 1/4 : FROM java:8

---> d23bdf5b1b1b

Step 2/4 : VOLUME /tmp

---> Using cache

---> d27a75b4151c

Step 3/4 : ADD jwordpress-web.jar web.jar

---> 90b04ec165cc

Step 4/4 : ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/web.jar"]

---> Running in 4663a51a704e

Removing intermediate container 4663a51a704e

---> 312c514e7ecd

Successfully built 312c514e7ecd

Successfully tagged jwordpress:web-1.0.3.RELEASE

查看镜像

推送到阿里云镜像

$ sudo docker login --username=hi35928472@aliyun.com registry.cn-hangzhou.aliyuncs.com

$ sudo docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/shanbei/web:[镜像版本号]

$ sudo docker push registry.cn-hangzhou.aliyuncs.com/shanbei/web:[镜像版本号]

例子如下图:

登陆阿里云仓库看是否上传成功

方法二:利用maven插件

com.spotify

docker-maven-plugin

0.4.13

${docker.repository.url}/${docker.repository.namespace}/${project.artifactId}:${project.version}

${docker.repository.serverId}

${docker.repository.url}

src/main/docker

/

${project.build.directory}

${project.build.finalName}.jar

Setting.xml增加仓库用户名和密码

docker-aliyun-my

xxxx@xxx.com

xxxx

xxx@xxxx.com

常量

registry.cn-qingdao.aliyuncs.com

shanbei

aliyun-docker-hub

运行docker build

然后在运行docker push

2种方式都可以,现实中,我们可能需要jenkins来打包部署,所以最好采用第二种方式比较靠谱。

目前100000+人已关注加入我们

       

       

docker 阿里云镜像_Springboot工程制作镜像并推送到阿里云相关推荐

  1. android studio 阿里云镜像_Springboot工程制作镜像并推送到阿里云

    springboot工程 我们在这里找了一个原来的项目工程,项目结构如下: Dockerfile文件编写 FROMjava:8 VOLUME/tmp ADDjwordpress-web.jarweb. ...

  2. Docker镜像的拉取和推送(阿里云镜像仓库)

    简介: 阿里云的容器镜像服务个人版是不要钱的,个人可以免费创建3个命名空间和最多可创建300个免费的镜像仓库供以使用,平时可以使用这项服务对个人的镜像进行管理,就可以不使用国外的DockerHub来对 ...

  3. idea打包meven镜像_docker打包maven项目推送到阿里云镜像仓库

    自从上次用derrick 创建 nodejs 项目容器之后,以此为砖来引出学习Dockerfile的玉,用docker创建maven项目镜像也分两步走.使用maven plugin docker 创建 ...

  4. 将本地docker镜像推送到阿里云仓库

    1. 进入到个人的阿里云容器镜像服务阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台,创建命名空间 2. 创建仓库 选择本地仓库  创建成功后会生成一个操作指南 3. 将本地镜像推送到阿里云仓 ...

  5. Docker学习(四) -- 制作私有镜像推送到阿里云或私服

    1. 将自己创建的镜像发布到阿里云仓库: 1.1 在阿里云容器镜像服务中创建个人实例 1.2 进入个人实例,创建命名空间 1.3 创建镜像仓库,会产生一些阿里云为你生成的命令 操作指南: 1. 登录阿 ...

  6. Docker本地镜像推送到阿里云

    把制作好的本地镜像推送到阿里云的仓库 首先登陆阿里云网站 https://cr.console.aliyun.com/cn-beijing/instances/credentials 登录以后进入控制 ...

  7. docker学习(三):docker镜像分层原理及本地镜像推送到阿里云或私服

    文章目录 前言 docker镜像分层加载原理 docker镜像commit操作产生新镜像 本地镜像发布到阿里云 将本地镜像推送到私有库 前言 大家好,这是我学习docker系列的笔记文章,目标是掌握d ...

  8. Docker镜像推送到阿里云镜像仓库

    一.本地镜像发布到阿里云 1.阿里云ECS Docker生态如下图示 二.镜像生成方法 1.基于当前容器创建一个新的镜像,新功能增强 命令 docker commit [OPTIONS] 容器ID [ ...

  9. 将镜像推送到阿里云私有仓库

    目录 一.将镜像推送到阿里云私有仓库 1.个人实例 2.点击个人实例 3.点击镜像仓库自行创建 4.点击创建好的仓库名称 4.1. 登录阿里云Docker Registry 4.2. 从Registr ...

最新文章

  1. ORB_SLAM2程序入口(System.cc)
  2. mysql操作总结_mysql常用操作总结大全
  3. 鸿蒙关键技术研究,鸿蒙内核源码分析(静态链接篇) | 完整小项目看透静态链接过程 | 百篇博客分析HarmonyOS源码 | v54.02...
  4. C# winform程序怎么打包成安装项目(图解)
  5. mysql ddl log 源码_MySQL中ddl_log.log初步认识
  6. 2022新版起点云码支付 带云端支持云端授权域名代理
  7. xrd连续扫描和步进扫描_XRD简答
  8. Python番外篇:segno模块制作WiFi二维码
  9. 正义网评咪蒙公号注销:自媒体创作须守住道德底线
  10. TEXT到EPUB格式转换
  11. 【机器学习】误差逆传播算法(反向传播算法)
  12. Roguelike随机地下城 | 二、设置门和优化最终房间的选择
  13. gentoo linux u盘安装,Gentoo系统安装步骤详解
  14. ImageNet千分类标签翻译
  15. 科技开发规划VBS屌丝暗色调
  16. 第三次个人作业——软件产品评测(K米Android端)
  17. Shell脚本中:#!/bin/bash和#!/bin/sh是什么意思以及区别?
  18. 4 数据校验和防碰撞
  19. android视频播放异常,Android 播放视频常见问题小结
  20. RT-Thread10月社区简报

热门文章

  1. ad怎么修改栅格_江苏宋女士回农村100万盖洋房,6个闺蜜结伴养老,你怎么看?...
  2. 查询阜阳2021高考成绩,今年阜阳高考状元名单是谁,2021年阜阳高考状元多少分
  3. Npm安装node-sass包依赖时报错 Cannot download “https://github.com/sass/node-sass/releases/download
  4. python 字符串格式化%s_Python字符串格式化%s%d%f详解
  5. it项目管理案例_盈通顾问项目管理精英训练营(第一期)
  6. java生产者消费者模型到精通_java生产者消费者模型
  7. Oracle查看表空间使用率SQL脚本
  8. 在windows 服务中 调打印_Windows打印后台处理程序漏洞(CVE20201048)
  9. java.net.URISyntaxException: Illegal character in query at index,http请求url中有非法字符导致
  10. SpringCloud Config 本地配置