docker入门加实战—部署Java和前端项目
docker入门加实战—部署Java和前端项目
部署之前,先删除nginx,和自己创建的dd两个容器:
docker rm -f nginx dd
部署Java项目
作为演示,我们的Java项目比较简单,提供了一个接口:

配置文件连接docker里的mysql:

打包如下:

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

查看容器:

查看日志:
docker logs -f sjdwzinstance

可以访问成功:

部署前端
前端文件hello_sjdwz.html的代码为

需要创建一个新的nginx容器,将nginx.conf和html目录与容器挂载;
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

进行访问如下:

docker入门加实战—部署Java和前端项目的更多相关文章
- Windows Azure 入门 -- VS 2015部署 ASP.NET网站(项目) 与 数据库
Windows Azure 入门 -- 部署 ASP.NET网站(项目) 与数据库 https://www.dotblogs.com.tw/mis2000lab/2015/12/24/windowsa ...
- CentOS7下部署java+tomcat+mysql项目及遇到的坑
CentOS 7 下安装部署java+tomcat+mysql 前置:CentOS7安装:https://jingyan.baidu.com/article/b7001fe1d1d8380e7382d ...
- 如何在github上部署自己的前端项目
很多时候我们想需要一个地址就可以访问自己的前端作品, 但是注册一个服务器和域名是需要花钱,很多小伙伴都不愿意, 其实这种前端静态页面github就可以帮我们预览其效果,而且只要在有网的情况下都可以访问 ...
- docker 运行tomcat 并部署 java web项目
以下tomcat官方镜像中tomcat:7 和tomcat:8的目录. CATALINA_BASE: /usr/local/tomcat CATALINA_HOME: /usr/local/tomca ...
- Docker 入门之swarm部署web应用
笔者近期在利用的docker搭建一个swarm集群,目前的应用还是入门级的,读者可自行根据自己的需要修改自己需要部署的应用,今天笔者介绍的是一个web应用的swarm集群的搭建.看这篇文章之前,我希望 ...
- Docker入门与实战讲解
转载自:http://blog.csdn.net/relax_hb/article/details/69668815 简述 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包 ...
- Docker入门-构建第一个Java程序
定制镜像 准备一个没有第三方依赖的java web项目,可能参考示例maven结构项目: session-web.war 把该war上传到安装有docker软件的服务器上宿主目录下.在同级目录创建Do ...
- Docker入门到实战
1.系统要求 Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10. CentOS 7满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存 ...
- 基于sentry的前端错误监控日志系统(部署sentry服务器/前端项目部署)-让前端最快的定位到生产问题
背景 在这越来越发达的网络时代,web应用也是越来越复杂,尤其是前端的开发,也是越来越受重视. 所以在我们前端开发完成后,会有一些列的web应用的上线验证,如自测.QA测试.code review 等 ...
- 使用jenkins进行前端项目自动部署
前面的话 后端的nodeJS项目可以使用pm2进行自动部署,由于前端项目打包后是静态资源,不需要进程守护.一般地,前端项目使用jenkins来进行自动部署,包括打包.测试等一系列流程.本文将详细介绍j ...
随机推荐
- Transaction rolled back because it has been marked as rollback-only大概问题及解决方法
Transaction rolled back because it has been marked as rollback-only 问题:前几天遇到一个问题,代码没有抛出我想要的带自定义提示消息的 ...
- node使用jsonwebtoken生成token与验证是否过期
场景 我们可以使用 cookie,session,token 来做鉴权. 下面我们来看一下, 如何使用 token 来做鉴权 jwt.sign 的简单介绍 npm install jsonwebtok ...
- 图像增强—自适应直方图均衡化(AHE)-限制对比度自适应直方图均衡(CLAHE)
一.自适应直方图均衡化(Adaptive histgram equalization/AHE) 1.简述 自适应直方图均衡化(AHE)用来提升图像的对比度的一种计算机图像处理技术.和普通的直方图均衡算 ...
- subprocess Python执行系统命令最优选模块
简介 subprocess 是 Python 中执行操作系统级别的命令的模块,所谓系级级别的命令就是如ls /etc/user ifconfig 等和操作系统有关的命令. subprocess 创建子 ...
- 【持续更新】C/C++ 踩坑记录(一)
未定义行为之 NULL dereference 下面这段代码中 is_valid() 解引用了空指针 str,我们的直觉是编译运行后将迎来 SIGSEGV,然而事情并非所期望的那样. /* * ub_ ...
- SQL: Unknown collation: 'utf8mb4_0900_ai_ci'
错误原因 字符集错误,我的版本是5.7,文件中是8.0 解决方案 替换字符集 utf8mb4_0900_ai_ci替换为utf8_general_ci utf8mb4替换为utf8 注意:注释中的部分 ...
- git: failed to push some refs to
错误原因 没有添加readme文件 解决方案 git pull --rebase origin master 至此问题解决
- 【go语言】2.4.3 Go Modules
Go Modules 是 Go 语言的官方依赖管理工具,自 Go 1.11 版本开始引入.它解决了 Go 语言在依赖管理上的一些问题,如版本控制.依赖隔离等. 初始化一个新的模块 你可以使用 go m ...
- 如何为物联网设备注入“华为云+鸿蒙DNA”?
本文分享自华为云社区<如何为物联网设备注入"华为云+鸿蒙DNA"?看华为云IoT怎么答[华为云IoT +鸿蒙]>,作者: 华为IoT云服务. 根据市场咨询机构预测,20 ...
- 形象谈JVM-第一章-认识JVM
对jvm的历史不做过多介绍,感兴趣的同学可以去自行搜索. 我们直接以HotSpot VM(Virtual Machine)举例. why 为什么要有虚拟机? 举一个形象的例子:手机现在几乎是人手一台 ...