2个Dockerfile文件范例

Dockerfile 文件及指令详解 Dockerfile 文件中的指令 的语法、作用 以及使用案例详解 阅读详情

 一、后端Java项目

# 使用jar包制作镜像

# 使用的基础镜像
FROM adoptopenjdk/maven-openjdk8

# 设置时区
RUN rm -f /etc/localtime && ln -sv /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone

# 指定工作目录
WORKDIR /app

# 将jar包拷贝
COPY target/*.jar app.jar

# 定义环境变量设置默认值
ENV ACTIVE_PROFILE prod

# 定义服务端口
ENV SERVICE_PORT 9008

# 容器启动后运行的命令 使用 sh -c 让 shell 来解释环境变量。这种方式能够保证 $ACTIVE_PROFILE 在 CMD 执行时被正确替换。
CMD ["sh", "-c", "java -jar /app/app.jar --spring.profiles.active=$ACTIVE_PROFILE --server.port=$SERVICE_PORT"

二、前端Vue项目 

# 使用 Nginx 作为基础镜像
FROM nginx

ENV TimeZone=Asia/Shanghai

# 将本地的 Vue.js 项目打包拷贝到 Nginx 的默认静态文件目录
COPY dist/ /usr/share/nginx/html/

# 复制 Nginx 配置文件到容器中
COPY nginx.conf /etc/nginx/conf.d/default.conf

# 暴露 Nginx 默认的 HTTP 端口
EXPOSE 1908

搭配nginx.conf使用

server {
    listen 1908;
    server_name localhost;

    location / {
        root /usr/share/nginx/html;
        index index.html;
        try_files $uri $uri/ /index.html;
    }

    location /api/ {
      proxy_set_header Host $http_host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header REMOTE-HOST $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_pass http://localhost:9008/;
    }

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
}

Dockerfile文件编写 Dockerfile 是一个文本文件,其内包含了一条条的指令(Instruction),用于构建镜像。每一条指令构建一层镜像,因此每一条指令的内容,就是描述该层镜像应当如何构建。dockerfile的原理就是镜像分层。 阅读详情

相关推荐

【云原生】Dockerfile文件详解

dockerfile文件详解

低调,谦虚,自律,反思,成长,保持热爱,奔赴梦想 3174

Dockerfile命令详解 语法解析 & JAVA的Dockerfile模版及JVM常见参数

Dockerfile各命令详解。 命令解析 FROM 用于指定基准镜像,为后续的指令运行于基准镜像提供的运行环境。必须为Dockerfile文件开篇的第一个非注释行。 语法: FROM [:] FROM @ # :指定作为base image的名称,digest指定hash码 MAINTAINER 用于溯源,填入DockerFile维护者信息。 语法: MAINTAINER xxx ARG 定义变量,此处填入应用名称。 语法: ARG APP_NAME=name 使用时需用符号,如符号

君琴 的博客 4590

保姆级教程:用Zemax 18.9复现单模光纤耦合仿真(附康宁SMF-28e参数)

本文提供了一份详细的Zemax 18.9单模光纤耦合仿真教程,以康宁SMF-28e为例,涵盖从软件设置、材料参数输入到系统构建和优化的全流程。通过光束耦合分析和物理光学传播(POP)技术,帮助用户准确模拟光纤耦合效率,并解决常见问题,适用于光学设计初学者和专业人士。

weixin_27330481的博客 313

Docker部署java应用,前后端分离,包含配置文件映射

后代表容器内配置文件路径,需要在dockerfile中指明。日志文件目录映射,:前代表java应用配置的日志文件路径,在logback.xml中设置。:后代表容器内日志路径。2、docker运行脚本:包含docker build 和docker run命令。2、docker运行脚本:包含docker build 和docker run命令。docker重启配置,进程异常终止自动拉起docker容器(非手动停止)Docker部署java应用,前后端分离,包含配置文件映射。一、docker部署java应用。

weixin_44330810的博客 624

Centos7安装NVIDIA驱动并在docker容器中使用GPU

Centos7安装NVIDIA驱动并在docker容器中使用GPU

运维giao的博客 2084

PC微信逆向) 读取内存联系人链表

首先从一些网络上搜索到的信息可以得出联系人列表是保存在内存里的,并且是全局变量不会被释放,所以我们可以通过搜索某个联系人的信息来定位

Qwertyuiop2016的博客 2919

Docker部署java项目(Dockerfile方式)

Dockerweb应用的自动化打包和发布;自动化测试和持续集成、发布;在服务型环境中部署和调整数据库或其他的后台应用;从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。

weixin_42274398的博客 1万+

超详细!思岚S2激光雷达hector_mapping建图

使用思岚S2激光雷达,在ros平台上利用hector_mapping功能包实现建图功能

m0_50965539的博客 5591

Dockerfile构建构建参考

Dockerfile指令集 dockerfile主要组成部分: #基础镜像信息 FROM openjdk:8-jdk-slim-bullseye #暴露端口 EXPOSE 8080 #容器启动时执行指令 CMD ["catalina.sh", "run"] dockerfile常用指令: FROM 这个镜像的父亲是谁?(指定基础【base】镜像) MAINTAINER 告诉别人,它的作者?(指定维护者信息,可以没有) RUN 容器构建时需要运行的命令(在命令前面加上RUN即可 ps:用

weixin_45277567的博客 4002

使用ZYNQ芯片和LVGL框架实现用户高刷新UI设计系列教程(第七讲)

默认是第一种键盘模式,当需要切换模式,进入到ta_event_cb函数修改模式,下面代码以数字模式举例子lv_keyboard_set_mode(kb, LV_KEYBOARD_MODE_NUMBER);在该界面中可以设置键盘文字的大小和文本类型,最下方判断键盘是否支持中文输入(中文输入,当汉字库不够大时,用户点击中文输入会少很多字)。//当LV_USE_KEYBOARD为1时启用虚拟键盘,LV_USE_ZH_KEYBOARD为1时支持中文输入。随后在系统设置界面中点击项目选项,选择显示键盘。

weixin_38828382的博客 1416

STM32CubeMx搭建LWIP程序

  使用STM32CubeMx5.21,在stm32f745平台上搭建ethernet通信程序,PHY选用KSZ8081RNB。(LAN8742/DP83848使用一样) 1、系统时钟设置   RCC设置,勾选外部高速时钟源。   系统时钟配置。写入外部晶振频率、HSE提供PLCCLK、HCLK,其他参数自动生成。 2、ETH设置   勾选设置NVIC。   根据硬件设置对应GPIO引脚。   参数设置默认   根据硬件设置PHY地址,其他参数默认。 3、LWIP设置   勾选使能,通用参数设置

Gandalf94的博客 3238

通过dockerfile构建jar包镜像

1.编写Dockerfile文件 # 指定基础镜像 FROM java:8 # 维护者信息 MAINTAINER key "422943393@qq.com" # 拷贝jar包 ADD test.jar app.jar # 暴露端口号 EXPOSE 8080 # 执行命令 ENTRYPOINT ["java","-jar","/app.jar"] 2.将jar包放在Dockerfile文件同一个目录下。执行构建命令 docker build -t testapp . 3.运行micro-ser

key915的博客 522

Oracle19c安装,基本配置教程(超详细)

安装有出错的风险,卸载也是比较麻烦的,所以先提前设置一个还原点,在windows中的步骤如下,如果对自己有信心,可以直接跳过该部分开始安装oracle在设置中进入创建还原点的界面开始创建还原点上面已经成功创建了还原点,如果安装oracle时出现问题,自己也无法解决,恢复到安装之前即可,恢复步骤如下经过上面的步骤,Oracle我们就能够正常使用了,我们就使用自己在sql plus里面创建的账号即可,创建的表会默认存放在我们自己创建的表空间里面。

秃头披风侠的博客 7万+

DockerFile文件详细解析

从应用软件的角度而言,DockerFile,Docker镜像和Docker容器分别代表了软件的三个不同阶段DockerFile是软件的原材料Docker镜像是软件的交付品Docker容器则可以认为是软件镜像的运行状态,也是依照镜像运行的容器实例DockerFile面向开发,Docker镜像成为交付标准,Docker容器则涉及部署和运维,三者缺一不可,合理充当Docker体系的基石!Dockerfile,需要定义一个Dockerfile,Dockerfile定义了进程需要的一切东西。

IT小辉同学 1万+

基于FMU的Star CCM+与Amesim复杂控制联合分析

基于FMU的Star CCM+与Amesim复杂控制联合分析

2201_75375391的博客 2017

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

DockerFile文件解析

DockerFile文件解析

qq_45371023的博客 5239

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

dockerfile文件

Dockerfile 是一个文本文件,开发者使用它来定义如何构建一个Docker镜像。它是自动化构建Docker镜像的标准方法,包含了用于构建镜像的一系列指令,这些指令会被Docker引擎按顺序逐行解析并执行。

m0_74356429的博客 1386

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Dockerfile文件作用,Dockerfile究竟是做什么的

什么是dockerfile?Dockerfile是一个包含用于组合映像的命令的文本文档。可以使用在命令行中调用任何命令。Docker通过读取Dockerfile中的指令自动生成映像。dockerbuild命令用于从Dockerfile构建映像。可以在dockerbuild命令中使用-f标志指向文件系统中任何位置的Dockerfile。Docker通过dockerfile来自动构建镜像.Dockerfile四部分说明一开始必须要指明所基于的镜像名称,关键字是FROM,这是必须的....

鹏神丶明月天 1万+

DockerFile文件详解

DockerFile文件详解

深圳市多克创新科技有限公司 1995

Dockerfile文件解释

我们需要跟我们本地一样的python执行环境,所以我们要使用dockerfile来构建我们的镜像 Dockerfile 一、书写规则 1、Dockerfile文件名称必须这么写(Dockerfile) 2、第一行,如果基础镜像没有的话,会去远程去拉 FROM 基础镜像名称:版本号 3、第二行,维护的人的名字 LABEL annlin 4、第三行,设置镜像的工作空间(相当于设置登录容器之后默认进去的目录) 设置一个应用目录,创建镜像的时候会创建这个目录 WORKDIR /app.

Annlin_的博客 1万+

dockerfile 文件

Dockerfile 是一个文本文件,开发者使用它来定义如何构建一个Docker镜像。它是自动化构建Docker镜像的标准方法,包含了用于构建镜像的一系列指令,这些指令会被Docker引擎按顺序逐行解析并执行。构建镜像时,通过在命令行中运行。

z1231234321的博客 1537

Dockerfile文件详解

Docker可以从Dockerfile中读取指令并自动构建镜像。Dockerfile是一个文本文档,其中包含用户可以在命令行上调用的进行镜像装配的所有命令。使用docker build,用户可以创建一个连续执行多个命令行指令的自动构建。 用法 docker build 命令从 Dockerfile 和一个 构建上下文(build context) 中构建docker镜像。构建上下文(build ...

Bossen的学习历程 1万+

Dockerfile文件作用

今天推送代码到服务器上每次发布的都是老代码,新代码无论推多少次都不起作用,很是迷茫,找了半天原因,原因是前端根目录文件下缺少Dockerfile文件,然后把这个文件上传上去在发布部署页面就更新了,然后我看了这个文件了的内容 FROM nginx:latest COPY dist/ /usr/share/nginx/html/ COPY default.conf /etc/nginx/conf.d/default.conf 结果就是这么朴实无华就成功了! 下面就解释一下Dockerfile文件到底是干嘛

张木期的博客 3129

dockerfile详解_pm2+node项目dockerfile文件详解

废话不多说,先直接上配置:FROM node:10.15MAINTAINER test@qq.comCOPY . /tusercenter/WORKDIR /tusercenterRUN export NODE_ENV=test && npm install pm2 -gCMD pm2-docker start pm2.json//使用命令 pm2 start app.js 之后,...

weixin_39864601的博客 1015

一个Dockerfile的范例说明

Dockerfile: FROM index.alauda.cn/tutum/centos:6.5 #install jdk1.7 ADD jdk-7u51-linux-x64.tar.gz /usr/local/src ENV JAVA_HOME=/usr/local/src/jdk1.7.0_51 ENV PATH=$JAVA_HOME/bin:$PATH ENV CLASSPAT...

zhuangxingzan的专栏 312
上一篇: Docker安装mysql、redis、rabbitmq
下一篇: 使用Jenkins部署前端Vue项目和后端Java服务
星三火
博客等级 码龄10年 45粉丝 89原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值