docker部署mysql nginx redis

news2024/11/26 19:31:53

一.创建网络

# 创建网络
docker network create liming
# 查看网络
docker network ls

在这里插入图片描述

二.部署mysql

删除并重新创建mysql容器,并完成本地目录挂载:

  • 挂载/software/mysql/data到容器内的/var/lib/mysql目录
  • 挂载/software/mysql/init到容器内的/docker-entrypoint-initdb.d目录(初始化的SQL脚本目录)
  • 挂载/software/mysql/conf到容器内的/etc/mysql/conf.d目录(这个是MySQL配置文件目录)

配置MySQL的默认编码

[client]
default_character_set=utf8mb4
[mysql]
default_character_set=utf8mb4
[mysqld]
character_set_server=utf8mb4
collation_server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

在这里插入图片描述
初始化SQL脚本目录中增加sql脚本

在这里插入图片描述

我们直接将初始化SQL脚本和配置文件上传至虚拟机的/software目录下:

在这里插入图片描述

本地目录挂载

# 1.删除原来的MySQL容器
docker rm -f mysql

# 2.进入software目录
cd /software

# 3.创建并运行新mysql容器,挂载本地目录
docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123 \
  -v ./mysql/data:/var/lib/mysql \
  -v ./mysql/conf:/etc/mysql/conf.d \
  -v ./mysql/init:/docker-entrypoint-initdb.d \
  mysql

# 将mysql容器加入到自己的网络
docker network connect liming mysql

# 4.查看root目录,可以发现~/mysql/data目录已经自动创建好了
ls -l mysql
# 结果:
total 12
drwxr-xr-x 2 root    root 4096 Nov  6 16:16 conf
drwxr-xr-x 7 polkitd root 4096 Nov  6 16:20 data
drwxr-xr-x 2 root    root 4096 Nov  6 16:16 init

# 查看data目录,会发现里面有大量数据库数据,说明数据库完成了初始化
ls -l data

# 5.查看MySQL容器内数据
# 5.1.进入MySQL
docker exec -it mysql mysql -uroot -p123
# 5.2.查看编码表
show variables like "%char%";
# 5.3.结果,发现编码是utf8mb4没有问题
+--------------------------+--------------------------------+
| Variable_name            | Value                          |
+--------------------------+--------------------------------+
| character_set_client     | utf8mb4                        |
| character_set_connection | utf8mb4                        |
| character_set_database   | utf8mb4                        |
| character_set_filesystem | binary                         |
| character_set_results    | utf8mb4                        |
| character_set_server     | utf8mb4                        |
| character_set_system     | utf8mb3                        |
| character_sets_dir       | /usr/share/mysql-8.0/charsets/ |
+--------------------------+--------------------------------+

# 6.查看数据
# 6.1.查看数据库
show databases;
# 结果,hmall是黑马商城数据库
+--------------------+
| Database           |
+--------------------+
| hmall              |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)
# 6.2.切换到hmall数据库
use hmall;
# 6.3.查看表
show tables;
# 结果:
+-----------------+
| Tables_in_hmall |
+-----------------+
| address         |
| cart            |
| item            |
| order           |
| order_detail    |
| order_logistics |
| pay_order       |
| user            |
+-----------------+
# 6.4.查看address表数据
+----+---------+----------+--------+----------+-------------+---------------+-----------+------------+-------+
| id | user_id | province | city   | town     | mobile      | street        | contact   | is_default | notes |
+----+---------+----------+--------+----------+-------------+---------------+-----------+------------+-------+
| 59 |       1 | 北京     | 北京   | 朝阳区    | 13900112222 | 金燕龙办公楼   | 李佳诚    | 0          | NULL  |
| 60 |       1 | 北京     | 北京   | 朝阳区    | 13700221122 | 修正大厦       | 李佳红    | 0          | NULL  |
| 61 |       1 | 上海     | 上海   | 浦东新区  | 13301212233 | 航头镇航头路   | 李佳星    | 1          | NULL  |
| 63 |       1 | 广东     | 佛山   | 永春      | 13301212233 | 永春武馆       | 李晓龙    | 0          | NULL  |
+----+---------+----------+--------+----------+-------------+---------------+-----------+------------+-------+
4 rows in set (0.00 sec)

三.部署nginx

创建nginx容器并完成两个挂载:

  • /software/nginx/nginx.conf挂载到/etc/nginx/nginx.conf
  • /software/nginx/html挂载到/usr/share/nginx/html
# 第1步,拉取Nginx镜像
docker pull nginx

# 第2步,查看镜像
docker images

# 第3步,创建并允许Nginx容器
docker run -d --name nginx -p 80:80 --network liming nginx

在这里插入图片描述

四.部署redis

# 第1步,拉取Nginx镜像
docker pull redis

# 第2步,创建并允许Nginx容器
docker run -d \
 --name redis \
 -p 6379:6379 \
 --network liming \
 redis

在这里插入图片描述

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

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

相关文章

微型导轨在医疗设备中起什么作用?

微型导轨因其高精度、小型化和轻量化的特点,被广泛应用于各种需要高精度和小型化的机器中,如数控机床、工业机器人、光学仪器、医疗设备和自动化设备等,尤其是医疗领域,其应用最为广泛。 1、手术机器人:手术机器人是医…

HackTheBox-Starting Point--Tier 1---Bike

文章目录 一 题目二 实验过程三 服务器端模版引擎注入(SSTI)1.什么是模版引擎2.SSTI3.挖掘SSTI4.执行payload 一 题目 Tags Web、Injection、Custom Applications、NodeJS、Reconnaissance、Remote Code Execution、Server Side Template Injection (S…

Maven中的继承与聚合

一,继承 前面我们将项目拆分成各个小模块,但是每个小模块中有很多相同的依赖于是我们创建一个父工程将模块中相同的依赖定义在父工程中,然后子工程继承父工程Maven作用:简化依赖配置,统一依赖管理,可以实现多重继承像J…

uniapp使用vue3和ts开发小程序自定义tab栏,实现自定义凸出tabbar效果

要实现自定义的tabbar效果,可以使用自定义tab覆盖主tab来实现,当程序启动或者从后台显示在前台时隐藏自带的tab来实现。自定义一个tab组件,然后在里面实现自定义的逻辑。 组件中所使用的组件api可以看:Tabbar 底部导航栏 | uView…

Digicert证书是什么?

DigiCert是全球领先的数字信任提供商,使个人和企业能够自信地在线参与,相信他们在数字世界中的足迹是安全的。DigiCert通过塑造全球行业标准、提供卓越的全球合规性和运营、为公共和私人信任提供证书生命周期管理以及将信任扩展到供应链和互联生态系统&a…

IO多路复用笔记

O多路复用是一种同步的IO模型。利用IO多路复用模型,可以实现一个线程监视多个文件句柄;一旦某个文件句柄就绪,就能够通知到对应应用程序进行相应的读写操作;没有文件句柄就绪时就会阻塞应用程序,从而释放出CPU资源。 …

mysql之备份和恢复

(一)备份 1、备份的种类 (1)完全备份:将整个数据库完整的进行备份 (2)增量备份:在完全备份的基础上,对后续新增的内容进行备份 2、备份的需求 (1&#x…

响应式建筑房地产开发企业网站模板源码带后台

模板信息: 模板编号:5635 模板编码:UTF8 模板颜色:红色 模板分类:基建、施工、地产、物业 适合行业:房地产类企业 模板介绍: 本模板自带eyoucms内核,无需再下载eyou系统&#xff0…

webgoat-(A1)SQL Injection

SQL Injection (intro) SQL 命令主要分为三类: 数据操作语言 (DML)DML 语句可用于请求记录 (SELECT)、添加记录 (INSERT)、删除记录 (DELETE) 和修改现有记录 &#xff…

python数据结构和算法基础(第一节,数据结构和算法基础)

01.算法引入 02.时间复杂度和大o表示法 2.1时间复杂度与大o表示法 引入: 2.1时间复杂度与大o表示法 pycharm中,快速多行注释,ctrl/ 2.2最坏时间复杂度与计算规则 2.3常见时间复杂度与大小关系 03.python列表和字典 3.1代码执行时间测量木…

归并排序(c语言代码实现)

归并排序(稳定的排序): 归并排序是一种分治策略的排序算法,其基本思想是将待排序数组分成两个子数组,分别对这两个子数组进行排序,然后合并这两个已经排序好的子数组,最终得到完整的已排序数组…

【C++】万字详解IO流(输入输出流+文件流+字符串流)

文章目录 一、标准输入输出流1.1提取符>>&#xff08;赋值给&#xff09;与插入符<<&#xff08;输出到&#xff09;理解cin >> a理解ifstream&#xff08;读&#xff09; >> a例子 1.2get系列函数get与getline函数细小但又重要的区别 1.3获取状态信息…

以色列战术耳机公司【Silynxcom】申请1000万美元纳斯达克IPO上市

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;总部位于以色列的战术通信耳机和配件公司Silynxcom Ltd&#xff0c;近期已向美国证券交易委员会&#xff08;SEC&#xff09;提交招股书&#xff0c;申请在纳斯达克IPO上市&#xff0c;股票代码为…

【Mac开发环境搭建】JDK安装、多JDK安装与切换

文章目录 JDK下载与安装下载安装 配置环境变量安装多个JDK共存 JDK下载与安装 下载 Oracle官网提供了非常多个版本的JDK供下载&#xff0c;可以点击如下链接重定向到JDK下载页面 ORACLE官网JDK下载 安装 下面的官方文档可以点开收藏到浏览器的收藏夹&#xff0c;这样后续在开…

纯前端实现的验证码

需求 前端实现验证码输入封装 本质绘制随机数&#xff0c;并进行校验function GVerify(options) { // 创建一个图形验证码对象&#xff0c;接收options对象为参数this.options { // 默认options参数值id: , // 容器IdcanvasId: verifyCanvas, // canvas的IDwidth: 100%, // 默…

windows下使用FCL(Flexible-collision-library)

windows下使用FCL&#xff08;The Flexible-collision-library&#xff09; FCL做为一款开源的碰撞检测库&#xff0c;支持多种基础的几何体&#xff0c;及支持C和python&#xff0c;在windows和linux平台均可以使用。是一款计算高效的碰撞检测工具。在机械臂规划控制框架movei…

Shopee买家通系统一款全自动操作虾皮买家号的软件

Shopee买家通系统可以全自动批量注册虾皮买家号&#xff0c;注册时可以自动调用手机号、自动接收短信验证、自动绑地址及支付卡&#xff0c;注册成功后还能自动绑定邮箱进行验证。 软件支持5个国家使用&#xff0c;越南、泰国、菲律宾、印度尼西亚、马来西亚。 内置防指纹技术 …

jenkins展示html报告样式需要注意的要点

一、jenkins展示html报告样式需要注意的要点 最后&#xff1a;

【Linux】vim

文章目录 一、vim是什么&#xff1f;二 、命令模式三、插入模式四、底行模式五、vim配置 一、vim是什么&#xff1f; Vim是一个强大的文本编辑器&#xff0c;它是Vi的增强版&#xff0c;支持多种语法高亮、插件扩展、多模式操作等功能。Vim有三种基本的工作模式&#xff1a;命…

操作系统——对文件的 基本操作(王道视频p65)

1.总体概述&#xff1a; 2.进程打开文件表 和 系统打开文件表&#xff1a;