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
相关推荐
郭涤生8 分钟前
Chapter 3: Programming Paradigms_《clean architecture》notes
java·开发语言·c++·笔记
米芝鱼8 分钟前
LearnOpenGL(九)自定义转换类
开发语言·c++·算法·游戏·图形渲染·shader·opengl
Rsecret215 分钟前
个人学习编程(3-29) leetcode刷题
学习·算法·leetcode
YGGP20 分钟前
Golang 的 GMP 调度机制常见问题及解答
开发语言·网络·golang
猫咪-952726 分钟前
Mysql索引
mysql
woai336427 分钟前
设计模式-单例模式
java·开发语言·单例模式
ljt272496066129 分钟前
Compose笔记(十三)--事件总线
笔记·android jetpack
始终奔跑在路上32 分钟前
Spring Initializr搭建spring boot项目
java·开发语言·spring boot·spring·软件开发
Arbori_2621536 分钟前
mysql 索引
数据库·mysql
沐土Arvin1 小时前
深入 SVG:矢量图形、滤镜与动态交互开发指南
开发语言·前端·javascript·css·html