Docker

简介: 本文介绍Docker基础体系,涵盖镜像与容器操作、Dockerfile编写及自定义镜像构建。通过实例演示如何打包Java项目为jar包,编写Dockerfile集成JDK与应用,生成镜像并运行容器,实现端口映射与服务验证,帮助初学者快速掌握Docker核心技能。(238字)

对于docker知识体系还不熟悉的可以参照:Docker教程,涉及知识点如下
● 镜像知识:打包镜像、查看镜像
● 容器知识:查看容器、启动容器、查看日志
● dockerfile知识:编写dockerfile,自定义构建镜像
1.镜像打包
1.工程打jar包
步骤同:Linux打包部署,这里我直接提供打好的jar包以节约时间:
2.编写dockerfile文件
dockerfile文件的编写原理:Docker教程 中的“3.DockerFile自定义镜像”,这里我们编写如下:

指定基础镜像

FROM ubuntu:16.04

配置环境变量,JDK的安装目录

ENV JAVA_DIR=/tmp/linux

拷贝jdk和java项目的包

COPY ./jdk8.tar.gz $JAVA_DIR/
COPY ./linuxDemo.jar /tmp/app.jar

安装JDK

RUN cd $JAVA_DIR \
&& tar -xf ./jdk8.tar.gz \
&& mv ./jdk1.8.0_144 ./java8

配置环境变量

ENV JAVA_HOME=$JAVA_DIR/java8
ENV PATH=$PATH:$JAVA_HOME/bin

暴露端口

EXPOSE 8090

入口,java项目的启动命令

ENTRYPOINT java -jar /tmp/app.jar
2.生成镜像
完整文件如下:

这里我因为基础版本拉取失败,所以将JDK一起打包进去了,所以文件比较大

● 注意:上述命令执行路径:在对应DockerFile所在路径
3.运行容器
● 这里必须做端口映射,否则容器内端口我们是无法访问到,必须映射到宿主机

4.验证心跳

相关文章
|
移动开发 前端开发 Java
使用ipaguard插件对Spring Boot程序进行代码混淆
使用ipaguard插件对Spring Boot程序进行代码混淆
869 0
|
Java Maven Docker
Docker部署可执行jar包
Docker部署可执行jar包
6568 0
|
4月前
阿里云轻量应用服务器“无固定流量”是什么意思?不限制流量?流量随便用吗?
阿里云轻量应用服务器“无固定流量”即不限制月度流量,无超额费用,告别天价账单。2026年已升级至200Mbps峰值带宽,真正实现流量自由使用。详情见官网:https://t.aliyun.com/U/dwftch
519 0
|
NoSQL 数据可视化 关系型数据库
推荐几个好用的redis可视化工具
推荐几个好用的redis可视化工具
19820 1
|
9月前
|
弹性计算 搜索推荐 异构计算
租用阿里云服务器一年要多少钱?38元、68元、99元和199元多个配置选择
阿里云服务器租用价格多样,轻量应用服务器38元起/年,ECS云服务器99元起/年,2核2G至8核32G多种配置可选,香港节点25元/月起,GPU服务器按需计费,活动优惠力度大,新老用户同享,详情可查官方活动页。
1521 8
|
9月前
|
缓存 NoSQL Java
微服务高频面试题
本课程系统讲解微服务架构核心知识:涵盖SpringBoot与SpringCloud原理、Nacos注册发现、OpenFeign远程调用、Sentinel熔断限流、Seata分布式事务、Gateway网关鉴权、RabbitMQ异步解耦、Elasticsearch倒排索引、Redis持久化与集群、缓存三大问题及解决方案,结合Canal实现数据同步,全面提升微服务实战能力。
|
9月前
|
存储 SQL 关系型数据库
面试八股文专题-----MySQL篇
本篇系统讲解MySQL核心知识:查询语句的书写与执行顺序、多表连接方式、索引机制(B+树、聚簇/非聚簇、回表、覆盖索引)、SQL优化策略(左前缀原则、索引失效场景)、存储引擎对比及慢查询定位分析,助力高效数据库开发与调优。
|
9月前
|
canal 消息中间件 关系型数据库
配置数据同步环境
本文介绍如何配置Canal+MQ实现MySQL数据同步。首先开启MySQL主从复制并启用Binlog行模式,创建Canal专用用户;接着部署Canal服务,配置其通过RabbitMQ发送数据变更消息;再设置监听的数据库表及动态Topic路由;最后在RabbitMQ中创建交换机与队列绑定,完成数据同步链路。修改指定表数据后,Canal捕获Binlog并将更新消息发送至MQ队列,供下游系统消费,实现高效、可靠的数据同步。
|
数据采集 JSON 数据挖掘
淘宝API对接系列:商品详情与评论数据分析(JSON数据返回)
1. 商品详情API(taobao.item.get) • 功能:获取商品基础信息(标题、价格、库存、销量)、图片、类目、促销信息等。
|
Java UED Spring
Springboot通过SSE实现实时消息返回
通过Spring Boot实现SSE,可以简单高效地将实时消息推送给客户端。虽然SSE有其限制,但对于许多实时消息推送场景而言,它提供了一种简洁而强大的解决方案。在实际开发中,根据具体需求选择合适的技术,可以提高系统的性能和用户体验。希望本文能帮助你深入理解Spring Boot中SSE的实现和应用。
7783 1