Docker镜像构建

简介: Docker镜像怎么构建呢?以下有回答。

1.jdk镜像构建


首先创建一个目录


在这个目录下,将下载的jdk tar包解压


创建Dockerfile文件,并编辑,将下面的内容复制进去


##基于centos7进行构建

FROM centos:centos7


##创建JDK安装目录

RUN mkdir -p /usr/java


##将解压的JDK复制到上面的目录中


COPY jdk1.8.0_192 /usr/java/jdk1.8.0_192


##设置java环境变量

ENV JAVA_HOME=/usr/java/jdk1.8.0_192

ENV PATH=$JAVA_HOME/bin:$PATH


然后执行


docker build -t arungupta/jdk .

arungupta/jdk :s是你要构建的景象名称


然后通过docker images查看镜像


image.png

运行刚才创建的jdk镜像

docker run -d -it arungupta/jdk /bin/bash


image.png


注意:创建容器的时候一定要使用 -it /bin/bash这种方式,要不然jdk的容器起不来。

验证镜像中的jdk


docker exec -it <刚才运行的容器ID> /bin/bash


image.png

在命令刚下查看环境是否正确


Spring boot应用镜像构建


将你的Springboot打jar包,目录结构


建立一个目录,在这个目录下创建Dockerfile,编辑内容

image.png


##从我们刚才构建的JDK镜像进行构建

FROM arungupta/jdk

MAINTAINER zjf "zhangjf1@gmail.com"

ADD spring-boot-1.0.jar app.jar

COPY spring-boot-1.0.jar /soft/apps

ENTRYPOINT exec java -jar app.jar


然后执行命令


docker build -t zjf/springboot .


然后docker images 查看构建好的镜像运行刚才我们构建的spring boot镜像

docker run -p 3003:3003 -t zjf/springboot

-p是端口映射,前面是服务的端口,后面是容器的映射端口,这样是为了和宿主机上的端口冲突


如果要放到后台运行,加-it


image.png

然后在浏览器中访问localhost:3003


image.png



目录
相关文章
|
4天前
|
存储 安全 持续交付
【Docker 专栏】Docker 镜像的版本控制与管理
【5月更文挑战第9天】本文探讨了Docker镜像版本控制与管理的重要性,包括可重复性、回滚能力、协作开发和持续集成。常用方法有标签、构建参数和版本控制系统。管理策略涉及定期清理、分层管理和镜像仓库。语义化标签、环境变量和配置文件在版本控制中有应用。版本系统与Docker结合能跟踪历史和促进协作。注意点包括优化镜像大小、确保安全性和兼容性。案例分析和未来趋势展示了持续发展的镜像管理技术,为Docker应用的稳定与进步保驾护航。
【Docker 专栏】Docker 镜像的版本控制与管理
|
1天前
|
Kubernetes 持续交付 Docker
构建高效微服务架构:Docker与Kubernetes的完美搭档
【5月更文挑战第17天】在当今云计算和微服务架构的大潮中,Docker容器化技术和Kubernetes容器编排系统成为了后端开发领域的热门技术栈。本文将探讨如何通过Docker和Kubernetes的结合使用来构建一个高效、可扩展且易于管理的微服务环境。我们将从基础概念出发,深入到实际操作层面,最后讨论这种组合对持续集成和持续部署(CI/CD)流程的影响,旨在为开发者和企业提供一种可靠的后端服务解决方案。
|
1天前
|
存储 Linux Docker
CentOS7修改Docker容器和镜像默认存储位置
CentOS7修改Docker容器和镜像默认存储位置
|
4天前
|
存储 前端开发 JavaScript
基于 GitHub Workflow和 Docker 构建 NextJS
基于 GitHub Workflow和 Docker 构建 NextJS
8 0
|
4天前
|
Prometheus 监控 Cloud Native
构建高效稳定的Docker容器监控体系
【5月更文挑战第14天】 在现代微服务架构中,Docker容器作为应用部署的基本单元,其运行状态的监控对于保障系统稳定性和性能至关重要。本文将探讨如何构建一个高效且稳定的Docker容器监控体系,涵盖监控工具的选择、关键指标的采集、数据可视化以及告警机制的设计。通过对Prometheus和Grafana的整合使用,实现对容器资源利用率、网络IO以及应用健康状态的全方位监控,确保系统的高可用性和故障快速响应。
|
4天前
|
Prometheus 监控 Cloud Native
构建高效稳定的Docker容器监控体系
【5月更文挑战第13天】在微服务架构和容器化部署日益普及的背景下,对Docker容器的监控变得尤为重要。本文将探讨一种构建高效稳定Docker容器监控体系的方法,通过集成Prometheus和cAdvisor工具,实现对容器资源使用情况、性能指标和运行状态的实时监控。同时,结合Grafana进行数据可视化,为运维人员提供直观的分析界面,以便及时发现和解决潜在问题,保障系统的高可用性和稳定性。
30 6
|
4天前
|
运维 安全 API
构建高效自动化运维体系:Ansible与Docker的协同实践
【5月更文挑战第13天】在现代IT基础设施管理中,自动化运维已成为提升效率、确保一致性和降低人为错误的关键。本文通过深入探讨Ansible和Docker的集成实践,揭示了如何构建一个灵活、可扩展且高效的自动化运维体系。我们将从理论到实践,展示如何利用这两种技术实现自动化部署、管理和扩展应用服务,以及它们如何帮助运维团队应对快速变化的业务需求和复杂的IT环境。
28 1
|
4天前
|
存储 安全 开发者
如何删除 Docker 镜像、容器和卷?
【5月更文挑战第11天】
19 2
如何删除 Docker 镜像、容器和卷?
|
4天前
|
运维 安全 Docker
【Docker 专栏】Docker 镜像安全扫描与漏洞修复
【5月更文挑战第9天】Docker技术在软件开发和部署中带来便利,但其镜像安全问题不容忽视。本文探讨了Docker镜像安全扫描与漏洞修复,强调了镜像安全对应用和系统的重要性。文中介绍了静态和动态扫描方法,列举了软件漏洞、配置漏洞和恶意软件等常见安全问题,并提到了Clair和Trivy等扫描工具。修复策略包括更新软件、调整配置和重建镜像。此外,加强安全意识、规范镜像制作流程和定期扫描是管理建议。未来,将持续面对新的安全挑战,需持续研究和完善安全技术。
【Docker 专栏】Docker 镜像安全扫描与漏洞修复
|
4天前
|
运维 安全 Linux
深入理解Docker自定义网络:构建高效的容器网络环境
深入理解Docker自定义网络:构建高效的容器网络环境