Ubuntu环境使用docker构建并运行SpringBoot镜像

今天Ubuntu环境使用docker构建并运行SpringBoot镜像,看文章之前建议先查看安装流程:

Linux环境之Ubuntu安装Docker流程

一、镜像打包过程及执行

1、创建一个测试目录

mkdir javaDemo

2、springBoot的包复制到此目录下

cp demo1-0.0.1-SNAPSHOT.jar /data/app/javaDemo/

3、下载合适的JDK镜像

docker search openjdkdocker pull adoptopenjdk/openjdk11

4、javaDemo目录下创建Dockerfile 文件

vim Dockerfile

配置信息填写

FROM adoptopenjdk/openjdk11
LABEL maintainer=demo1-testCOPY demo1-0.0.1-SNAPSHOT.jar  /app.jarENTRYPOINT ["java","-jar","/app.jar"]

5、构件镜像

 docker build -t java-demo:v1.0 .

成功日志

查看镜像

docker images

 6、运行镜像

docker run -d -p 8081:8081 java-demo:v1.0

7、查看启动状态

docker ps

结果

 8、测试访问

9、根据容器id查看日志

#根据容器id查看容器运行日志
docker logs CONTAINER ID
#根据容器id查看容器运行的全部日志,日志持续更新
docker logs -f CONTAINER ID

 演示

10、防火墙开放端口,如果访问不了可能是防火墙设置问题

#查看防火墙状态
systemctl status firewalld
#开启防火墙
systemctl start firewalld.service
#添加防火墙端口
firewall-cmd --zone=public --add-port=8081/tcp --permanent
#重启防火墙
systemctl restart firewalld.service
#查看所有开放的端口
firewall-cmd --list-ports
#关闭防火墙
systemctl stop firewalld.service

二、镜像保存及分享

此处我们分享在外网保存docker网站。

1、首先需要注册账号

网站:https://registry.hub.docker.com/

注册邮箱进来使用gmail 等格式的账号

2、注册完成后用账号在服务器登录

docker login

如图

 3、镜像起一个新的名,一定得加前缀,前缀是用户名

#docker tag 名字 前缀/名字docker tag java-demo:v1.0 yindeng158/java-demo:v1.1

如图

 4、推送镜像到docker.hub仓库

docker push yindeng158/java-demo:v1.1

成功日志

 5、docker服务器查看是否推送成功

https://hub.docker.com/repositories

如图

6、镜像在其他服务器下载

首先还是先登录docker.hub仓库:docker login

7、执行常用下载命令

docker pull yindeng158/java-demo:v1.1

如图:

8、镜像导出

docker save -o /javaDemo/file.tar IMAGE1 IMAGE2 ...
docker save IMAGE1 IMAGE2 ... > /javaDemo/file.tar
#导出为压缩格式
docker save IMAGE1 IMAGE2 ... | gzip > /javaDemo/file.tar.gz

9、镜像导入

#导入本地镜像
docker load -i /javaDemo/file.tar
docker load < /javaDemo/file.tar.gz

到此、使用docker打java镜像分享暂时告一段落,后面会持续更新,敬请期待!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/719886.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络实验 基于ENSP的协议分析

实验二 基于eNSP的协议分析 一、实验目的&#xff1a; 1&#xff09;熟悉VRP的基本操作命令 2&#xff09;掌握ARP协议的基本工作原理 3&#xff09;掌握IP协议的基本工作原理 4&#xff09;掌握ICMP协议的基本工作原理 二、实验内容&#xff1a; 1、场景1&#xff1a;两台PC机…

React-子传父

1.概念 说明&#xff1a;React中子组件向父组件传递数据通常涉及回调函数和状态提升等方法。 2.代码实现 2.1绑定事件 说明&#xff1a;父组件绑定自定义事件 <Son onGetSonMsg{getMsg}></Son> 2.2接受事件 说明&#xff1a;子组件接受父组件的自定义事件名称…

前端食堂技术周刊第 114 期:Interop 2024、TS 5.4 RC、2 月登陆浏览器的新功能、JSR、AI SDK 3.0

美味值&#xff1a;&#x1f31f;&#x1f31f;&#x1f31f;&#x1f31f;&#x1f31f; 口味&#xff1a;凉拌鸡架 食堂技术周刊仓库地址&#xff1a;https://github.com/Geekhyt/weekly 大家好&#xff0c;我是童欧巴。欢迎来到前端食堂技术周刊&#xff0c;我们先来看下…

机器学习模型总结

多元线性回归&#xff08;linear regression&#xff09; 自变量&#xff1a;连续型数据&#xff0c;因变量&#xff1a;连续型数据 选自&#xff1a;周志华老师《机器学习》P53-55 思想&#xff1a;残差平方和达到最小时的关系式子即为所求&#xff0c;残差平方和&#xff1a…

【学习心得】爬虫JS逆向通解思路

我希望能总结一个涵盖大部分爬虫逆向问题的固定思路&#xff0c;在这个思路框架下可以很高效的进行逆向爬虫开发。目前我仍在总结中&#xff0c;下面的通解思路尚不完善&#xff0c;还望各位读者见谅。 一、第一步&#xff1a;明确反爬手段 反爬手段可以分为几个大类 &#…

20240304-2-计算机网络

计算机网络 知识体系 Questions 1.计算机网络分层的优点和缺点 优点 各层之间是独立的&#xff1b;灵活性好&#xff1b;结构上可分割开&#xff1b;易于实现和维护&#xff1b;能促进标准化工作。 缺点&#xff1a; 降低效率&#xff1b;有些功能会在不同的层次中重复出现&…

微信小程序屏蔽控制台黄色提示信息

我们很多时候 一个小程序 啥都没有 终端就一直报一些黄色的警告 可以打开项目的 project.config.json 找一下setting 下面有没有 checkSiteMap 字段 如果没有加一个 如果有 直接将值改为 false 这样 再运行 就不会有这个黄色的提示信息了

第1章:绪论 1.1数据库系统概述

文章目录 1.1 数据库系统概述1.1.1 数据库的4个基本概念1.1.2 数据管理技术的产生和发展1.1.3 数据库系统的特点 1.1 数据库系统概述 1.1.1 数据库的4个基本概念 数据(Data) 是数据库中存储的基本对象 数据的定义&#xff1a;描述事物的符号记录 数据的种类&#xff1a;文本、…

Java多态性的作用及解析

多态性是 Java 面向对象编程的一个重要特性,它的主要作用包括以下几个方面: 提高代码的可扩展性:多态性使得我们可以在不修改现有代码的情况下,通过继承和重写方法来添加新的行为。这意味着我们可以在不影响现有功能的前提下,对代码进行扩展和修改。 增强代码的可读性:使…

JVM 基础知识学习笔记

JVM 基础知识学习笔记 1. JVM 介绍 什么是 JVM ? JVM 本质上是一个运行在计算机上的程序&#xff0c;它的职责是运行 Java 字节码文件。 JVM 的功能是什么 ? 解释和运行: 对字节码文件中的指令&#xff0c;实时的解释成机器码&#xff0c;让计算机执行。内存管理: 自动为…

【洛谷 P8682】[蓝桥杯 2019 省 B] 等差数列 题解(数学+排序+差分)

[蓝桥杯 2019 省 B] 等差数列 题目描述 数学老师给小明出了一道等差数列求和的题目。但是粗心的小明忘记了一部分的数列&#xff0c;只记得其中 N N N 个整数。 现在给出这 N N N 个整数&#xff0c;小明想知道包含这 N N N 个整数的最短的等差数列有几项&#xff1f; 输…

001 GUI编程简介

一个知识该怎么学&#xff1f; 这是什么该怎么玩能干什么 图形化程序应该包含并不限于如下组件 窗口弹窗面板文本框列表框按钮图片监听事件鼠标键盘事件 GUI介绍 核心技术&#xff1a;Swing与AWT 不流行原因&#xff1a;界面不美观、需要JRE环境 仍然学习的原因&#xf…

【Web】速谈FastJson反序列化中JdbcRowSetImpl的利用

目录 简要原理分析 exp 前文&#xff1a;【Web】速谈FastJson反序列化中TemplatesImpl的利用 简要原理分析 前文的TemplatesImpl链存在严重限制&#xff0c;即JSON.parseObject()需要开启Feature.SupportNonPublicField fastjson的第二条链JdbcRowSetImpl&#xff0c;主要…

【AI视野·今日Robot 机器人论文速览 第八十一期】Mon, 4 Mar 2024

AI视野今日CS.Robotics 机器人学论文速览 Mon, 4 Mar 2024 Totally 25 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Robotics Papers Robust Online Epistemic Replanning of Multi-Robot Missions Authors Lauren Bramblett, Branko Miloradovic, Patrick Sherm…

MySQL字符集和比较规则

MySQL字符集和比较规则 字符集和比较规则简介 字符集&#xff1a; 描述字符与二进制数据的映射关系 比较规则&#xff1a;比较指定字符集中的字符的规则 字符集 我们知道&#xff0c;计算机无法直接存储字符串&#xff0c;实际存储的都是二进制数据。字符集是有限的&#xff…

[LeetBook]【学习日记】数组内乘积

题目 按规则计算统计结果 为了深入了解这些生物群体的生态特征&#xff0c;你们进行了大量的实地观察和数据采集。数组 arrayA 记录了各个生物群体数量数据&#xff0c;其中 arrayA[i] 表示第 i 个生物群体的数量。请返回一个数组 arrayB&#xff0c;该数组为基于数组 arrayA …

分布式任务调度:XXL-Job入门介绍实战

1. 引言 随着互联网业务的不断扩展和复杂化&#xff0c;分布式任务调度成为了构建大规模系统的重要组成部分。XXL-Job作为一款开源的分布式任务调度平台&#xff0c;提供了完整的任务调度和管理功能&#xff0c;被广泛应用于各种场景。本文将介绍如何入门使用XXL-Job&#xff…

Python解释器及PyCharm安装教程

PyCharm官方下载地址☞https://www.jetbrains.com/pycharm/download/?sectionwindows Python解释器官方下载地址☞ https://www.python.org/downloads/windows/

数学建模【灰色关联分析】

一、灰色关联分析简介 一般的抽象系统,如社会系统、经济系统、农业系统、生态系统、教育系统等都包含有许多种因素&#xff0c;多种因素共同作用的结果决定了该系统的发展态势。人们常常希望知道在众多的因素中&#xff0c;哪些是主要因素&#xff0c;哪些是次要因素;哪些因素…

图像剪辑|Linux|ImageMagick的初步使用--素描,毛玻璃等特效

前言&#xff1a; ImageMagick在图像剪辑领域的地位基本等同于FFmpeg&#xff0c;和FFmpeg基本一样&#xff0c;在Linux下使用此工具的原因是该工具可以使用shell脚本批量剪辑&#xff0c;在Windows下就会比较麻烦一些了 那么&#xff0c;本文主要是记录一下ImageMagick的一些…