Docker-部署若依项目

文章目录

  • 后端
    • 一、搭建局域网
    • 二、redis安装
      • 测试
    • 三、MySQL安装
    • 四、后端项目放入位置及使用Dockerfile自定义镜像
      • 后端项目放入位置
  • 前端配置
    • 检查各个端口是否启动
    • nginx部署

首先得先把内部的文件给删除清空

docker images–查看有哪些文件
docker rmi -f ID–删除ID
在这里插入图片描述

后端

一、搭建局域网

【都是在root的~目录下进行的】
--搭建net-ry局域网,用于部署若依项目
docker network create net-ry --subnet=172.68.0.0/16 --gateway=172.68.0.1--局域网的查看
docker network ls# 注意1:关闭宿主机的防火墙,否则容器内部的MySQL、redis等服务,外部访问不了;开放端口3306、6379端口也没用
--查看防火墙状态
systemctl status firewalld
--停止防火墙
systemctl stop firewalld# 注意2:关闭防火墙后必须重启docker,否者出现如下错误
docker: Error response from daemon: driver failed programming external connectivity on endpoint ruoyi-admin 
(399a34630e6ef8e4ed7cf20d46b9654c8d535d0fe44ceadebf8bd605d3da35b8):  
(iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8080 -j DNAT --to-destination 172.68.0.4:8080 ! 
-i br-c34635070c6f: iptables: No chain/target/match by that name.--重启docker
systemctl restart docker

二、redis安装

--创建两个目录
mkdir -p /data/redis/{conf,data}--进入到redis这个目录下
cd /data/redis/
--查看是否创建成功{conf,data}这两个文件
ll
--进入conf目录中放置redis.conf文件
cd  conf

在这里插入图片描述
把redis.conf文件放入conf目录中
在这里插入图片描述

docker run -itd --name zking-redis -p 6379:6379 \
-v /data/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /data/redis/data:/data \
--privileged=true --restart=always \
--network net-ry redis \
redis-server /etc/redis/redis.conf 

在这里插入图片描述

测试

方式一:

#进入容器
[root@localhost conf]# docker exec -it zking-redis /bin/bashroot@ec98cd3af83e:/data#  whereis redis-cli
redis-cli: /usr/local/bin/redis-cli
root@ec98cd3af83e:/data# cd /usr/local/bin
root@ec98cd3af83e:/usr/local/bin# ls
docker-entrypoint.sh  redis-benchmark  redis-check-rdb  redis-sentinel
gosu                  redis-check-aof  redis-cli        redis-server
root@ec98cd3af83e:/usr/local/bin# redis-cli
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> exit【ctrl+d】--退出可以按 Ctrl+d

在这里插入图片描述
方式二:
在这里插入图片描述

三、MySQL安装

#退出程序
exit#退出容器
Ctrl+P+Q# 1.创建文件夹
mkdir -p /data/mysql/{conf,data}

在这里插入图片描述

#进入conf
cd  /data/mysql/conf/# 2.上传my.cnf文件到/data/mysql/conf文件夹中 (可以将my2.cnf修改好在Linux中重命名为my.cnf)
mv my2.cnf my.cnf

在这里插入图片描述

# 3.启动MySQL容器服务 
docker run -d --name zking-mysql --network net-ry  \
-v /data/mysql/conf/my.cnf:/etc/my.cnf \
-v /data/mysql/data:/var/lib/mysql \
--privileged=true --restart=always \
-e MYSQL_ROOT_PASSWORD=sasa -p 3306:3306 \
mysql/mysql-server:5.7

检查

docker ps

在这里插入图片描述
远程连接

 
# 进入容器
docker exec -it zking-mysql /bin/bash# 登录
mysql -u root -p;# 创建用户及授权
grant all privileges on *.* to root@'%' identified by 'sasa' with grant option;# 刷新权限
flush privileges; 

在这里插入图片描述
工具测试
在这里插入图片描述

四、后端项目放入位置及使用Dockerfile自定义镜像

后端项目放入位置

# 1.构建Dockerfile镜像
1)切换到家目录
cd ~#新建文件夹
mkdir ruoyi-admin#切进去
cd ruoyi-admin2)上传ruoyi-admin.jar到Dockerfile_ruoyi-admin文件所在目录

在这里插入图片描述
在这里插入图片描述

#重命名
mv Dockerfile_ruoyi-admin Dockerfile4)ruoyi-admin为镜像名称,开始制作镜像
docker build -t ruoyi-admin .

查看自己做的镜像

docker images

在这里插入图片描述

docker images#运行容器
docker run -itd --name ruoyi-admin --network net-ry -p 8080:8080  ruoyi-admindocker ps#进入容器
docker exec -it ruoyi-admin /bin/bash#查看日志
cd /home/ruoyi/logs/ls -l

在这里插入图片描述

最后,下列就是后台配置好了
在这里插入图片描述

前端配置

检查各个端口是否启动

  • docker ps
  • docker ps -a
    在这里插入图片描述
docker start ruoyi-admin

在这里插入图片描述

nginx部署

分析nginx.conf
在这里插入图片描述

具体步骤

# 1.创建目录
mkdir -p /data/nginx/{conf,html}# 2.切换到conf目录
cd  /data/nginx/conf/#3上传nginx.conf至/data/nginx/conf文件夹中

在这里插入图片描述
运行启动容器

docker run -itd --name zking-nginx --network net-ry -p 80:80 \
-v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /data/nginx/html:/usr/share/nginx/html \
--privileged=true --restart=always \
nginx

在这里插入图片描述
位置解释
在这里插入图片描述
在这里插入图片描述
解压

#下载解压命令yum  install -y unzip#输入解压命令dist.zip压缩包名字
unzip   dist.zip

在这里插入图片描述
项目就配置完成了
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726092.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

腾讯QQ推出AI聊天搭子;零一万物01AI宣布开源Yi-9B模型

🦉 AI新闻 🚀 腾讯QQ推出AI聊天搭子,进军AI对话领域 摘要:腾讯QQ合作筑梦岛和混元助手,推出了AI对话功能“AI聊天搭子”,提供多种虚拟角色与用户实时互动,目前已开启测试。此外,抖…

STM32/GD32——I2C通信协议

芯片选型 Ciga Device — GD32F470系列 通讯规则 I2C协议(或称IIC)是由飞利浦(现在的恩智浦半导体)公司开发的一种通用的总线协议。它使用两根线(时钟线和数据线)来传输数据,支持多个设备共享…

智能设备 app 设计 —— 蓝蓝 UI 设计公司

今天给大家推荐是智能设备app设计,随着智能设备的逐渐普及随之操作app也越来越多,希望能给大家带来灵感 #日常灵感 #创意设计#UI提升#ui设计#app #设计案例分享|#设计 #产品设计#产品设计#设计灵感 #B端产品经理 #ui #产品 #美工 #交互 #产品经理 #开发 …

乐优商城(九)数据同步

1. 项目问题分析 现在项目中有三个独立的微服务: 商品微服务:原始数据保存在 MySQL 中,从 MySQL 中增删改查商品数据。搜索微服务:原始数据保存在 ES 的索引库中,从 ES 中查询商品数据。商品详情微服务:做…

python75-Python的函数参数,关键字(keyword)参数

在定义Python函数时可定义形参(形式参数的意思)这些形参的值要等到调用时才能确定下来,由函数的调用者负责为形参传入参数值。简单来说,就是谁调用函数,谁负责传入参数值。 关键字(keyword)参数 Python函数的参数名不是无意义的,Python 允许在调用函数时通过名字来传入参…

mysql 查看数据库、表的命令

查看所有的数据库 1.show databases; 2.select schema_name from information_schema.schemata\G \G 。以纵向报表的形式显示结果,方便查看。 查看mysql数据库的运行状态 status 选择数据库 use 库名 例 use TestDb 查看数据库中的表 show tables 查看表结构 de…

怎么在图片上直接编辑文字?3个方法教你轻松编辑

怎么在图片上直接编辑文字?随着技术的飞速发展,图片编辑已经成为我们日常生活和工作中不可或缺的一部分。在图片上直接编辑文字,不仅能够添加说明和标注,提高信息的传达效率,还能够增强图片的美观和设计感,…

qt练习案例

记录一下qt练习案例,方便学习qt知识点 基本部件 案例1 需求,做一个标签,显示"你好"知识点,QLabel画面 4. 参考,Qt 之 QLabel 案例2 需求,做一个标签,显示图片 知识点,…

在Linux/Ubuntu/Debian中用fdisk分区mkfs格式化

fdisk 是一个命令行实用程序,用于在类 Unix 操作系统(包括 Linux)中对磁盘进行分区。 如果你想使用“fdisk”格式化 USB 驱动器,通常会先对驱动器进行分区,然后使用特定的文件系统格式化分区。 以下是有关如何在 Linu…

c++初阶------类和对象(六大默认构造函数的揭破)

作者前言 🎂 ✨✨✨✨✨✨🍧🍧🍧🍧🍧🍧🍧🎂 ​🎂 作者介绍: 🎂🎂 🎂 🎉🎉&#x1f389…

1.JavaWebJava基础加强[万字长文]-Junit、反射、注解核心知识点梳理

导语: 一、Junit单元测试 1.Junit测试概述 2.Junit使用步骤 3.Junit_Before&After 二、反射 1.反射概述 2.反射获取字节码Class对象的三种方式 3.Class对象功能概述 4.Class对象功能_获取Field 5.Class对象功能_获取Constructor 6.Class对象功能_获取…

20个实操保姆级副业项目

这边免费给到大家很多项目资料和工具,主要的就是为了消除信息壁垒,在互联网创业或兼职的路上不再被割,不再多花冤枉钱,相信人间有真爱,有不懂的问题可咨询博主!为了帮助到更多的创业者,资料欢迎…

极狐GitLab 16.3 重磅发布,极致的 DevOps 体验等你来【一】

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 极狐GitLab 在去年 8 月份发布了 16.3 版本。此次发布带来了合…

ElasticSearch为什么快?

ElasticSearch是一个高性能,分布式搜索引擎,它之所以快,主要有以下几个原因: 1.分布式存储:ElasticSearch使用分布式存储技术,将数据存储在多个节点上从而减少单个节点的压力,提高整体性能。 …

Kakarot:当今以太坊的未来

1. 引言 前序博客: Kakarot:部署在Starknet上的ZK-EVM type 3 随着 Kakarot zkEVM 即将发布测试网,想重申下 Kakarot zkEVM 的愿景为: 为什么在rollup空间中还需要另一个 zkEVM? 开源代码见: https:/…

Anaconda prompt运行打开jupyter notebook 指令出错

一、打不开jupyter notebook网页 报错如下: Traceback (most recent call last): File “D:\anaconda3\lib\site-packages\notebook\traittypes.py”, line 235, in _resolve_classes klass self._resolve_string(klass) File “C:\Users\DELL\AppData\Roaming\Py…

oracle数据库通过sql实现blob类型字段转字符串

最近遇到一个问题,数据表tabA中有一个字段content是blob类型。现在需要通过sql把这个字段的内容展示出来。一般情况我们都是通过后端实现blob转string。但是通过sql查询出blob类型的内容还没遇到过,今天把解决这个问题的心理路程记录下。 首先&#xff0…

软考 系统分析师系列知识点之系统性能评估(3)

接前一篇文章:软考 系统分析师系列知识点之系统性能评估(2) 所属章节: 第6章. 系统配置与性能评价 第8节. 系统性能评估 6.8.2 经典评估方法 在计算机技术的发展过程中,性能评估的常用方法有:时钟频率法、…

vue3项目绝对路径重命名后vscode无法提示路径,无法进行文件跳转

vue3项目绝对路径重命名后vscode无法提示路径 设置如下: //vite.config.js resolve: {// 绝对路径重命名 @/xxxx => src/xxxxalias: {"@": path.resolve(__dirname, "src"),

安全SCDN详解

随着互联网发展,越来越多的人都会使用到网站,个人网站、企业网站,各类大大小小的网站影响到人们的生活方方面面。许多站长都有使用或是听起过CDN,而SCDN,全称为“Security Content Delivery Network”,即安…