Docker安装mysql&安装nginx&安装Redis

Docker安装mysql

下载镜像

复制代码
docker pull mysql:8.0

注意,使用此方法安装镜像需要提前配置镜像源,详情看之前的文章

安装

xml 复制代码
docker run -d -p 3306:3306 \
--name mysql \
--restart=always \
--privileged=true \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=root \
mysql:8.0

进入到容器

xml 复制代码
docker exec -it 容器名/容器id bash

登录mysql

复制代码
mysql -uroot -proot

修改root账号加密方式

复制代码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';

退出

复制代码
exit

docker run 命令常见参数

xml 复制代码
--name:指定容器名称
--restart=always 自动启动
--privileged=true 拥有特权
-p:指定端口映射
-d:让容器后台运行

Docker容器命令

创建一个新的容器并运行

复制代码
docker run 镜像名

查看容器

xml 复制代码
docker ps -a

停止容器

xml 复制代码
docker stop 容器名

启动容器

复制代码
docker start 容器名

删除容器

删除容器前,先要停止容器

复制代码
docker rm 容器名

查看容器日志

复制代码
docker logs 容器名

数据卷挂载

数据卷是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。

它将宿主机目录映射到容器内目录,方便我们操作容器内文件,或者方便迁移容器产生

数据。

在执行docker run命令时,使用-v数据卷:容器内目录可以完成数据卷挂载

由于容器内的目录操作起来不太方便,例如mysql数据目录,tomcat项目目录,所以可以在linux(宿主机)中创建一个目录,在运行镜像时,把宿主机中的目录和容器内的目录建立映射关系,后期运行产生数据,就可以存储在宿主集中的映射目录中,宿主机中的目录称为数据卷

创建mysql数据卷

xml 复制代码
mkdir -p /opt/mysql/data

安装

xml 复制代码
docker run -d -p 3306:3306 \
--name mysql \
--restart=always \
--privileged=true \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=root \
-v /opt/mysql/data:/var/lib/mysql \
mysql:8.0

nginx

nginx是一个又俄罗斯程序员开发的一款前端web服务器(只能运行前端项目)

运行占内存小,性能高,最大并发链接数量可以达到50000

拉取镜像

复制代码
docker pull nginx:1.24

创建数据卷

xml 复制代码
mkdir -p /opt/nginx/html

安装命令

xml 复制代码
docker run -d -p 80:80 \
--name nginx \
--restart=always \
--privileged=true \
-v /opt/nginx/html:/usr/share/nginx/html \
nginx:1.24

访问

xml 复制代码
自己的ip:80

Redis

Redis是什么

Redis是一个开源的,使用c语言编写的,支持网络交互的

将数据存储在内存中的Key-Value结构的数据存储系统,支持多种语言,它可以用作数据库,缓存和消息中间件

是一款非关系型数据库

Redis可以用来当做数据库(存储一些简单的数据,例如新闻点赞数量),缓存(秒杀的商品数量信息)

消息中间

Redis特点

1.数据存储在内存中,也支持数据持久化,可以将内存中的数据保持在磁盘中,重启的时候也可以再次加载进行使用

2.性能极高,Redis 能读的速度是 110000 次/s,写的速度是 81000 次/s 。

3.提供了丰富的数据结构存储数据,list,set,zset,hash 等数据结构的存储。

4.原子 -- Redis 的所有操作都是原子性的,同时 Redis 还支持对几个操作全并后的原子性执行。

5.Redis 分布式集群化扩展性极,高即 master-slave(主-从)模式。

Redis安装

创建配置文件和数据的映射(数据卷)

xml 复制代码
mkdir -p /opt/redis/conf
mkdir -p /opt/redis/data

安装命令

复制代码
docker run -d -p 6379:6379  --name redis  --restart=always --privileged=true -v /opt/redis/conf/redis.conf:/etc/redis/redis.conf -v /opt/redis/data:/data redis:6.0
相关推荐
m4Rk_2 小时前
【论文阅读】Agent 记忆机制(83):Inside Out——用可演化 PersonaTree 构建 Agent 的核心长期记忆
论文阅读·人工智能·学习·开源·github
andyweike2 小时前
php笔记
开发语言·笔记·php
Shadow(⊙o⊙)2 小时前
MySQL内置函数
数据库·mysql
Lsetea3 小时前
OpenSSL verify报error 20:CAfile、fullchain与本地信任链分层排查
nginx·https·ssl证书·openssl·证书链
鬓戈3 小时前
Rust 语言与 AI 应用生态调研及学习路径
人工智能·学习·rust
传奇开心果编程3 小时前
【SwiftUI娓娓道来】第3课:让界面活起来——交互与动画指南
学习·macos·ui·ios·swiftui·swift
Circ.3 小时前
Python 调试 Litellm 本地大模型接口:模型列表与对话接口实操踩坑记录
开发语言·python
夜雪一千3 小时前
MySQL 常用 DEFAULT 默认值一览表
mysql
xian_wwq3 小时前
【学习笔记】等保合规安全基线核查实战
笔记·学习
传奇开心果编程4 小时前
【Jetpack Compose进阶学与练】第14课:系列收尾复习总结;Compose项目常见坑点汇总;学习路线与后续学习方向
android·学习·ui·kotlin·android jetpack