当前位置: 首页 > news >正文

docker入门加实战—部署Java和前端项目

docker入门加实战—部署Java和前端项目

部署之前,先删除nginx,和自己创建的dd两个容器:

docker rm -f nginx dd

部署Java项目

作为演示,我们的Java项目比较简单,提供了一个接口:

简单Java项目

配置文件连接docker里的mysql:

image-20231014092631830

打包如下:

打包后

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 sjdwz_docker_java_demo-0.0.1-SNAPSHOT.jar /app.jar
# 入口
ENTRYPOINT ["java", "-jar", "/app.jar"]

把这两个文件传到/root/sjdwz_demo目录

上传文件

/root/sjdwz_demo构建sjdwzservice的镜像;

docker build -t sjdwzservice .

构建成功

运行容器;

# 注意sjdwz_network是自己创建的网络
docker run -d --name sjdwzinstance -p 8080:8080 --network sjdwz_network sjdwzservice

image-20231014002811133

查看容器:

查看rong'qi

查看日志:

docker logs -f sjdwzinstance

查看日志

可以访问成功:

访问成功

部署前端

前端文件hello_sjdwz.html的代码为

前端代码

需要创建一个新的nginx容器,将nginx.conf和html目录与容器挂载;

nginx配置如下:

nginx配置

sjdwzinstance为创建的后端容器名;

把文件上传

文件夹内容

其中html文件夹中包含hello_sjdwz.html文件;

运行新的nginx容器

docker run -d \
  --name nginx \
  -p 18080:18080 \
  -v /root/nginx/html:/usr/share/nginx/html \
  -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf \
  --network sjdwz_network \
  nginx

运行nginx容器

进行访问如下:

访问

http://www.dtcms.com/a/2857.html

相关文章:

  • Flutter的Invalid use of a private type in a public API警告
  • 【数据结构】模拟实现LinkedList
  • STM32基于HAL库RT-Thread Demo测试
  • Kotlin Compose Multiplatform 跨平台开发实践之加入 iOS 支持
  • java经典面试题总结
  • K8s 概念及组件
  • scrapy爬虫之网站图片爬取
  • 信号量、互斥锁、计数信号量
  • Qt扫盲-QPen 理论使用总结
  • 钢铁异常分类 few-shot 问题 小陈读paper 钢铁2
  • 【Linux】文件权限、目录权限、掩码、粘滞位以及相关指令
  • nvm 安装 node 安装不上 npm
  • Go 语言的垃圾回收机制:自动化内存管理
  • 微信小程序自定义方法submitPwd(e){}传入的e有什么作用
  • 国密https访问
  • 冯诺依曼体结构 - 为什么要有操作系统
  • SystemVerilog学习(4)——自定义结构
  • LLM 系列 | 21 : Code Llama实战(上篇) : 模型简介与评测
  • 寻找Windows API 原始字节(x64dbg)
  • JavaPTA练习题 7-3 身体质量指数(BMI)测算
  • 微信小程序一键获取位置
  • 解决windows10、windows11故障:Microsoft-Windows-Kernel-Processor-Power 事件ID:37
  • Could not find artifact com.sleepycat;je:jar:7.3.7 in aliyunmaven
  • 智能水印相机微信小程序源码
  • 深度学习中常用的激活函数有sigmoid、tanh、ReLU、LeakyReLU、PReLU、GELU等。
  • 08-React扩展
  • c/c++的include机制简述
  • STM32不使用 cubeMX实现外部中断
  • 全网最丑焊锡教程(仅排针焊接心得)
  • 【C++代码】二叉搜索树的最近公共祖先,二叉搜索树中的插入操作,删除二叉搜索树中的节点--代码随想录