失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 前端项目docker容器化布署如何配置后台服务器地址

前端项目docker容器化布署如何配置后台服务器地址

时间:2024-01-04 21:25:43

相关推荐

前端项目docker容器化布署如何配置后台服务器地址

前言

Docker是什么东西以及为什么使用docker我就不赘述了,最近遇到一个项目,需求是这样的:前后端服务均布署在docker中,但是由于每次启动后端服务时它的IP及端口号是动态变化的,所以前端每次都需要在后端服务启动后手动配置后台服务地址,那么有没有自动配置的方法呢,这就是这篇文章所要解答的问题。

问题

比如,我有一个前端项目,它的配置文件config.js是这样的

window.GLOBAL={SERVICE_URL:"http://192.250.23.233:8088"}

布署在docker以后192.250.23.233和8088会变成其它的,变成什么再容器启动前谁也不知道。

那我怎么在容器启动后自动替换192.250.23.233和8088呢。

解决方案

在docker启动时通过-e参数将ip和port写入环境变量,容器启动后通过shell主动将ip和port对应的环境变量写入config.js

示例

//DockerfileFROM hub./public/centos:7.2.1511COPY jdk8.rpm jdk8.rpmRUN rpm -ivh jdk8.rpmRUN yum clean allRUN mkdir /tomcatCOPY ./tomcat /tomcatCOPY ./sdc_start.sh /home/sdc_start.shRUN chmod 777 /tomcat/bin/* CMD bash /home/sdc_start.sh

//sdc_start.sh#!/bin/bash# description: sdc_start ....#启动服务器echo "服务启动中..."echo window.GLOBAL="{SERVICE_URL:\"http://$IP:$PORT\"}"> /tomcat/webapps/dist/static/conf/config.js/tomcat/bin/catalina.sh run

然后启动容器

docker run -d -e IP="192.168.111.112" -e PORT="8999" containerID

config.js中的内容就会变成

window.GLOBAL={SERVICE_URL:"http://192.168.111.112:8999"}

如果觉得《前端项目docker容器化布署如何配置后台服务器地址》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。