Docker安装Nginx并部署MySQL容器构建

news2024/12/29 11:40:59

一.MySQL容器的构建

1.创建MySQL根目录及配置文件夹&data文件夹

mkdir -p mysql/{conf,data}

2.上传配置文件

将配置文件上传到conf文件夹(数据库配置文件已放到置顶资源中)

3.命令构建MySQL容器

/soft/mysql/conf/my.cnf:/etc/my.cnf目录为我们配置绑定的目录

/soft/mysql/data:/var/lib/mysql 是将data目录与MySQL目录进行绑定

docker run \
--name m1 \
-v /soft/mysql/conf/my.cnf:/etc/my.cnf \
-v /soft/mysql/data:/var/lib/mysql \
--privileged=true \
-e MYSQL_ROOT_PASSWORD=123456 \
--net mynet \
--ip 172.20.0.200 \
-d mysql/mysql-server:5.7

5.创建用户并赋予权限

进入到我们的MySQL容器中(m1为容器名)

docker exec -it m1 bash

 进入容器后登录到MySQL

mysql -u root -p

输入密码后进入到MySQL赋予权限 

grant all on *.* to root@'%' identified by '123456';

6.编辑Dockerfile文件准备构建镜像

Dockerfile文件详解:

openjdk为我们构建的基础镜像

/project为我们指定的工作目录,可以根据实际情况替换为自己的目录

spring-jar为我们要上传部署的项目,这里要提前将项目放到与当前dockerfile文件同级目录下,然后将当前项目复制到我们的工作目录

CMD java -jar spring.jar 是在创建镜像时运行当前项目

-mysql/addr 为指定配置文件中的运行地址

FROM openjdk
WORKDIR /project
COPY spring-jar /project
CMD java -jar spring.jar -mysql/addr

7.在MySQL中用命令运行SQL文件

首先将准备好的SQL文件放到之前创建好的../mysql/data目录下

然后登录进入到当前Mysql中

在前面我们构建镜像时有一个将data目录与MySQL配置文件目录进行绑定

-v /soft/mysql/data:/var/lib/mysql

注:首先要创建好数据库并指定使用当前数据库

例:

create database shop
use shop

现在我们可以执行以下命令进行运行SQL文件

source /var/lib/mysql/book.sql

二.Nginx安装与部署

1.拉取Nginx镜像

docker pull nginx

2.创建并运行Nginx容器

docker run -it -p 80:80 --name n1 nginx

我们利用IP访问一下,出现以下界面说明安装成功 

 上面的创建是最基础的创建Nginx容器,在后期我们还需要对Nginx进行配置,目录挂载等等

1.新建Nginx目录及配置目录

mkdir -p /soft/nginx/conf.d

进入到当前目录,将配置文件上传(配置文件在资源置顶,包含Nginx集群和域名映射) 

再所需测试的前端文件资源进行上传(同上)

2.运行以下命令创建并配置容器 

docker run -itd \
--name n1 \
-v /soft/nginx/conf.d:/etc/nginx/conf.d \
-v /soft/nginx/html:/etc/nginx/html \
-p 80:80 \
--net mynet \
--ip 172.20.0.104 \
nginx

容器创建运行完成后,在主机可以利用IP进行访问,访问成功说明前端部署成功了

3.本机域名映射 

进入到我们本机的C:\Windows\System32\drivers\etc目录下

找到Host打开进行修改你要映射的域名

输入你的虚拟机IP以及域名

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

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

相关文章

如何安装配置VisualSVN服务并实现公网访问本地服务【内网穿透】

文章目录 前言1. VisualSVN安装与配置2. VisualSVN Server管理界面配置3. 安装cpolar内网穿透3.1 注册账号3.2 下载cpolar客户端3.3 登录cpolar web ui管理界面3.4 创建公网地址 4. 固定公网地址访问 前言 SVN 是 subversion 的缩写,是一个开放源代码的版本控制系统…

STM32入门教程-2023版【4-1】OLED调试工具

关注 点赞 不错过精彩内容 大家好,我是硬核王同学,最近在做免费的嵌入式知识分享,帮助对嵌入式感兴趣的同学学习嵌入式、做项目、找工作! 一、概述 在这一节先提前介绍一下,在以后的教程中我们会经常用到这个显示屏&#xff0…

javaScript设计模式-工厂

它的好处是消除对象间的耦合度,在派生子类时提供了更大的灵活性。但盲目的把普通的构造函数扔在一边,并不值得提倡。如果要采一不可能另外换用一个类,或都不需要在运行期间在一系列可互换的类中进行选择,就不应该使用。这样在后期…

中仕公考:国考进面后资格复审需要准备什么?

参加国考面试的考生在资格审核阶段需要准备以下材料: 1、本人身份证、学生证或工作证复印件。 2、公共科目笔试准考证复印件。 3、考试报名登记表。 4、本(专)科、研究生各阶段学历、学位证书(应届毕业生没有可以暂时不提供)。 5、报名资料上填写的各类证书材料…

页面数据类型为json,后端接受json数据

项目结构 依赖pom.xml <dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.2.8.RELEASE</version></dependency><dependency><groupId>org.springframework…

一些面试会问到的奇怪问题与面试总结

1.v-for、v-if先后顺序。 官方不建议一起使用&#xff0c;但是有时候面试的时候会问到。 在vue2中是v-for先与v-if的。 源码js编译结果&#xff1a; _c()就是vm.$createElement()&#xff0c;意思是创建一个虚拟的element&#xff0c;就是返回值是VNode。 _l就是renderlist…

C#,入门教程(18)——分支语句(switch-case)的基础知识

上一篇&#xff1a; C#&#xff0c;入门教程(17)——条件语句&#xff08;if-else&#xff09;的基础知识https://blog.csdn.net/beijinghorn/article/details/124033376 1、switch概述 switch-case分支语句 可以理解为 大号 的 if-else。 switch语句以switch关键字开头&…

redis7部署集群:包含主从模式、哨兵模式、Cluster集群模式等三种模式

前言&#xff1a; redis部署集群常见的一般有三种模式&#xff1a;主从模式&#xff0c;Sentinel&#xff08;哨兵模式&#xff09;&#xff0c;Redis Cluster&#xff08;高可用Cluster集群&#xff09;&#xff0c;根据不同的需求可自定义选择部署方式。 Redis 主从模式&…

2.【Linux】(进程的状态||深入理解fork||底层剖析||task_struct||进程优先级||并行和并发||详解环境变量)

一.进程 1.进程调度 Linux把所有进程通过双向链表的方式连接起来组成任务队列&#xff0c;操作系统和cpu通过选择一个task_struct执行其代码来调度进程。 2.进程的状态 1.运行态&#xff1a;pcb结构体在运行或在运行队列中排队。 2.阻塞态&#xff1a;等待非cpu资源就绪&am…

工厂企业消防安全AI可视化视频智能监管解决方案

一、方案背景 2023年11月20日下午6时30分许&#xff0c;位于江苏省无锡市惠山区前洲街道的某公司突发严重火灾&#xff0c;共造成7人死亡。这次火灾提醒我们工业安全至关重要&#xff0c;企业都应该时刻保持警惕&#xff0c;加强安全意识和培训&#xff0c;提高应对突发事件的…

RK3568驱动指南|驱动基础进阶篇-进阶8 内核运行ko文件总结

瑞芯微RK3568芯片是一款定位中高端的通用型SOC&#xff0c;采用22nm制程工艺&#xff0c;搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码&#xff0c;支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU&#xff0c;可用于轻量级人工…

DrGraph原理示教 - OpenCV 4 功能 - 形态操作

形态类型 从OpenCV图像处理基本知识来看&#xff0c;膨胀腐蚀操作后&#xff0c;还有形态操作&#xff0c;如开运算、闭运算、梯度、礼帽与黑帽&#xff0c;感觉很多&#xff0c;其实&#xff0c;本质上就是批处理操作&#xff0c;如 开运算&#xff1a;先腐蚀&#xff0c;再膨…

【不用找素材】ECS 游戏Demo制作教程(3) 1.17

一、生成墓碑 新建脚本如下&#xff1a; using Unity.Entities; using Unity.Mathematics;namespace ECSdemo {public struct GraveyardRandom : IComponentData{public Random Value;}}扩充GraveyardMono如下&#xff1a; using Unity.Entities; using Unity.Mathematics; …

AVL树 -- C++实现

AVL树 – C实现 1. AVL树的概念 二叉搜索树虽可以缩短查找的效率&#xff0c;但如果数据有序或接近有序二叉搜索树将退化为单支树&#xff0c;查找元素相当于在顺序表中搜索元素&#xff0c;效率低下。因此&#xff0c;两位俄罗斯的数学家G.M.Adelson-Velskii和E.M.Landis在1…

MySQL表的基本插入查询操作详解

博学而笃志&#xff0c;切问而近思 文章目录 插入插入更新 替换查询全列查询指定列查询查询字段为表达式查询结果指定别名查询结果去重 WHERE 条件基本比较逻辑运算符使用LIKE进行模糊匹配使用IN进行多个值匹配 排序筛选分页结果更新数据删除数据截断表聚合函数COUNTSUMAVGMAXM…

黑马Java——字符串

1.API 1.1API概述 什么是API API (Application Programming Interface) &#xff1a;应用程序编程接口 简单理解&#xff1a;API就是别人已经写好的东西&#xff0c;我们不需要自己编写&#xff0c;直接使用即可 JavaAPI: 指的就是 JDK 中提供的各种功能的 Java类&#xff…

网络编程【1】

【 1 】什么是网络编程 网络编程是指通过计算机网络进行数据交换和通信的编程过程。它涉及到使用网络协议和通信接口&#xff0c;使不同计算机之间能够进行数据传输和通信。 总结&#xff1a; 网络编程的研究前提就是基于互联网 网络编程就是基于互联网写代码 【 2 】为什么…

数字孪生时代,一起探索云端建模的无限潜能

在当今数字孪生时代&#xff0c;云端建模作为一项创新技术正迅速崭露头角。它基于云计算和大数据处理的优势&#xff0c;以及先进的三维建模技术&#xff0c;开启了建筑设计、城市规划和工程领域的全新时代。云端建模不仅实现了高效的数据处理和计算能力&#xff0c;还提供了无…

如何在苹果手机上进行文件管理

摘要 苹果手机没有像安卓系统那样内置文件管理器&#xff0c;但是可以通过使用克魔开发助手来实现强大的文件管理功能。本文介绍了如何使用克魔开发助手在电脑上管理和传输苹果手机的文件。 引言 很多朋友都在使用苹果手机&#xff0c;但是当需要查看手机中的文件时&#xf…

2024美赛数学建模思路 - 案例:ID3-决策树分类算法

文章目录 0 赛题思路1 算法介绍2 FP树表示法3 构建FP树4 实现代码 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 算法介绍 FP-Tree算法全称是FrequentPattern Tree算法&#xff0c;就是频繁模…