docker打包 java springboot vue redis mysql的镜像

参考文章https://www.jb51.net/article/146308.htm

看上面的文章先拉取了一个centos的镜像,尝试之后,安装mysql 有各种问题,所以直接拉一个mysql的镜像 在这个上面搞,因为直接拉取的mysql镜像 所以mysql 都是安装好的

1:mysql 拉取一个mysql镜像

 docker pull mysql:5.7

查看镜像

docker images

 根据镜像启动容器

docker run --name mysql57 -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

查看容器

docker ps

 

接下来 进入容器 安装环境和应用

docker exec -it 容器ID  bash

安装redis

apt install redis

安装jdk 从官网下载 linux的jdk 安装包 

从容器内返回 返回的命令返回是快捷键 ctrl+p ctrl+q  摁这两个 可以离开容器

回到宿主机 使用cp命令把jdk安装包拷贝到容器内

docker cp /www/wwwroot/jdk-8u321-linux-x64.tar 容器ID:/usr/local/java/

再次进入容器  进入/usr/local/java/目录 

cd /usr/local/java/

使用tar 解压jdk

tar zxvf jdk-8u321-linux-x64.tar

这样jdk 就安装好了  因为想省事 不设置环境变量了 执行的时候 直接带目录运行jar

安装nginx

apt install nginx

这样 jdk mysql nginx 都安装好了

离开容器 使用cp命令把springboot 打包好的项目 拷贝应用到容器内

docker cp /www/wwwroot/zcgl  容器ID:/opt

进入容器  修改yml  因为镜像内部没有vi命令 先安装 vi命令

apt-get install vim-gtk

启动spring boot项目

/usr/local/java/jdk1.8.0_321/bin/java -jar /opt/zcgl/xx.jar

就可以启动我们的java应用了 我这里遇到几个问题

1:默认mysql 对大小写敏感

需要修改配置文件 配置文件的位置 在 使用vi修改 /etc/mysql/conf.d/mysql.cnf

vi /etc/mysql/conf.d/mysql.cnf

增加配置项目

 2:初始化数据库 直接用Navicat连接数据库执行脚本即可

接下来部署vue项目 找到 nginx配置文件 按照需求修改

 vi /etc/nginx/sites-enabled/default

我修改了目录和反向代理和vue404 的问题

复制vue打包好的项目到 容器内

docker cp /www/wwwroot/c.com 容器ID:/var/www/

到这里 我们的环境部署就完成了  但是启动容器的时候 我们只能启动mysql 不能启动 redis 、nginx 和我们的java应用,试了一下直接在容器内增加开机启动,没有解决 好在docker 可以把启动命令里面打包到镜像

1:先把当前项目打包成镜像

#停掉容器
docker stop 容器ID
#查看容器id
docker ps -a
#容器打包成镜像
docker commit  -m '镜像名称' 容器ID 镜像名称:1
#查看镜像
docker images

编写启动命令

#!/bin/bash
sleep 1
service redis-server start
service nginx start
nohup /usr/local/java/jdk1.8.0_321/bin/java -jar /opt/zcgl/xxx.jar &

创建Dockerfile文件

vi Dockerfile

写入内容 把需要启动的内容写入到脚本内

FROM 镜像名称:1
COPY start.sh /root/start.sh
RUN chmod +x /root/start.sh
WORKDIR /root
ENTRYPOINT /root/start.sh && tail -f /dev/null

创建镜像

docker build -t 镜像名称:2 .

启动镜像 接下来就看到我们的应用就完美运行了

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装环境要求: - 操作系统:Linux - Node.js:版本 8.x 及以上 - NPM:版本 5.x 及以上 - JDK:版本 1.8 及以上 - MySQL:版本 5.7 及以上 - Redis:版本 3.x 及以上 - Nacos:版本 1.3.0 及以上 - MinIO:版本 RELEASE.2021-05-27T02-29-22Z 及以上 安装过程: 1. 安装 Linux 操作系统。 2. 安装 Node.js 和 NPM,可以通过官网下载安装包或使用包管理工具进行安装。 3. 安装 JDK,同样可以通过官网下载安装包或使用包管理工具进行安装。 4. 安装 MySQL,可以通过官网下载安装包或使用包管理工具进行安装。 5. 安装 Redis,同样可以通过官网下载安装包或使用包管理工具进行安装。 6. 安装 Nacos,可以通过官网下载安装包或使用包管理工具进行安装。 7. 安装 MinIO,同样可以通过官网下载安装包或使用包管理工具进行安装。 主要流程: 1. 创建数据库和相应的表结构。 2. 搭建 SpringBoot 后端框架,实现业务逻辑。 3. 配置 Redis 缓存,提高系统性能。 4. 集成 Nacos 服务注册和发现,实现微服务架构。 5. 集成 MinIO 对象存储,实现文件上传和下载功能。 6. 创建 Vue+Nuxt 前端项目,实现用户界面和交互。 7. 配置前端路由和状态管理,实现前端页面功能。 8. 集成 SpringCloud,将前端和后端项目打包Docker 镜像并部署到 Kubernetes 集群中。 9. 进行系统测试和优化,确保系统稳定性和可用性。 10. 上线系统并进行维护和更新。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值