Java代码部署到虚拟机
·
后端代码
通过maven的package命令打成jar包。
dockerfile
# 基础镜像
FROM openjdk:11.0-jre-buster
# 设定时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 拷贝jar包
COPY 项目名.jar /app.jar
# 入口
ENTRYPOINT ["java", "-jar", "/app.jar"]
将Dockerfile和生成的jar包一起上传到虚拟机的root目录:
# 1.构建项目镜像,不指定tag,则默认为latest
docker build -t 项目名 .
# 2.查看镜像
docker images
# 3.创建并运行容器,并通过--network将其加入自定义网络,这样才能通过容器名访问mysql
docker run -d --name 容器名 --network 自定义网络名 -p 8080:8080 项目镜像名
测试,通过浏览器访问:http://你的虚拟机地址:8080/项目接口
前端
-
html是静态资源目录 -
nginx.conf是nginx的配置文件,主要是完成对html下的静态资源目录做代理 -
把整个nginx目录上传到虚拟机的
/root目录下
前后端在一个自定义网络里
创建nginx容器并完成两个挂载:
-
把
/root/nginx/nginx.conf挂载到/etc/nginx/nginx.conf -
把
/root/nginx/html挂载到/usr/share/nginx/html
docker run -d \
--name nginx \
-p 端口名:端口名 \
-v /root/nginx/html:/usr/share/nginx/html \
-v /root/nginx/nginx.conf:/etc/nginx/nginx.conf \
--network 自定义网络名 \
nginx
测试,通过浏览器访问:http://你的虚拟机ip:端口名
更多推荐
所有评论(0)