关于将java项目部署到docker容器中并让本机访问
2022/7/13 1:23:54
本文主要是介绍关于将java项目部署到docker容器中并让本机访问,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.在服务器中安装docker并且拉mysql,java镜像。
2.开启mysql容器(设置Asia/shanhai 时间),登录其中,select now() 查询时间是否与当前时间相同,
3.给所以用户授予权限(或者单独ip 如:本机),配置用户远程连接权限grant all privileges on *.* to 'root'@'%' with grant option; flush privileges;
配置密码,并且更新加密方法
LTER USER 'root'@'%' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER; ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
可能需要先创建用户再授权用户。
4.本地sqlyog 连接(根据错误来授权,需要阿里云开端口),导入需要的sql文件,在到服务器上查看是否有数据库。
5.如果需要实现数据的持久化,删除容器后,再次开启数据依然存在。
6.将java打成jar包,上传到服务器中,在与同目录中创建Dockerfile文件,
7.build打成镜像,再run 端口映射,成容器。curl 看是否能访问成功。
8.其中可能会报数据库连接超时(安全组没有开数据中对应的端口),数据库密码错误(yum中配置数据库连接与授权的不一样),防火墙中端口是否暴露。
9.pc端和手机能成功访问(用公网)。
10.需要做的:需要去改变端口号,或者用代理来换ip防止被攻击,并且单纯的ip+端口,阿里云可能会关闭外界访问,这就需要域名与备案。mysql没有实现持久化并且redis没有部署进去。
11.本次实践主要注意数据库的授权与连接,端口的暴露,dockerfile文件的编写即可,并没有涉及到难点。
数据持久化可参考:(42条消息) Docker 部署 Mysql8.0_xsj34567的博客-CSDN博客_docker mysql8
这篇关于关于将java项目部署到docker容器中并让本机访问的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26手写消息中间件:从零开始的指南
- 2024-11-26Java语音识别项目资料:新手入门教程
- 2024-11-26JAVA语音识别项目资料:新手入门教程
- 2024-11-26Java语音识别项目资料:入门与实践指南
- 2024-11-26Java云原生资料入门教程
- 2024-11-26Java云原生资料入门教程
- 2024-11-26Java云原生资料:新手入门教程
- 2024-11-25Java创意资料:新手入门的创意学习指南
- 2024-11-25JAVA对接阿里云智能语音服务资料详解:新手入门指南
- 2024-11-25Java对接阿里云智能语音服务资料详解