2个Dockerfile文件范例

本文介绍了如何使用Java的Maven镜像构建后端应用,并将其部署在Docker容器中,同时展示了如何使用Nginx作为前端项目的静态服务器,与后端API进行集成,涉及环境变量设置和端口映射。
摘要由CSDN通过智能技术生成

 一、后端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;
    }
}

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
在Python中,可以使用xlrd库来读取Excel文件。下面是一个读取Excel文件范例: ```python import xlrd # 打开Excel文件 workbook = xlrd.open_workbook('example.xlsx') # 获取所有sheet名称 sheet_names = workbook.sheet_names() # 遍历所有sheet for sheet_name in sheet_names: # 根据sheet名称获取sheet对象 sheet = workbook.sheet_by_name(sheet_name) # 获取sheet的行数和列数 rows = sheet.nrows cols = sheet.ncols # 遍历每一行 for row in range(rows): # 遍历每一列 for col in range(cols): # 获取单元格的值 cell_value = sheet.cell_value(row, col) # 打印单元格的值 print(cell_value, end=' ') print() # 换行打印每一行的数据 ``` 在这个例子中,我们首先使用xlrd库的`open_workbook`函数打开Excel文件。然后,通过`sheet_names`方法获取所有的sheet名称,再通过循环遍历每个sheet。接下来,我们使用sheet对象的`nrows`和`ncols`属性获取行数和列数,然后使用两个循环遍历每个单元格,并使用`cell_value`方法获取每个单元格的值。最后,我们打印每个单元格的值。 请注意,这个例子假设Excel文件名为`example.xlsx`,你需要根据实际的文件名进行修改。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Python实现读取txt文件并转换为excel的方法示例](https://blog.csdn.net/weixin_39775872/article/details/110175755)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值