docker安装mysql、redis镜像的方法是什么
docker安装mysql、redis镜像
docker镜像商店:官方镜像商店
redis安装下载
下载镜像:
可直接默认下载最新镜像,也可以指定版本下载【注意,版本差异不大的软件可以直接下载最新版本,差异大的,例如java,mysql等,最好指定熟悉的版本进行下载】
docker pull redis
启动镜像:
docker run --name=redis -d --restart=always -p 6379:6379 redis
--name
:别名-d
:后台运行,镜像不会随窗口关闭而关闭--restart=always
:随docker启动而自启 可以进行后配置:docker update --restart=always [容器名称|id]-p
:6379[主机端口]:6379[映射端口],如果有版本号,应该带上版本号redis:6.2.6
挂载外部文件启动:
提前创建好文件夹和文件,redis.conf如果没有特别的配置,可以参考(测试环境,生产环境换成本地,关闭密码即可):
#redis使用自定义配置文件启动 docker run -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \ -v /mydata/redis/data:/data \ -d --name redis \ --restart=always \ -p 6379:6379 \ redis:latest redis-server /etc/redis/redis.conf #最后这一句代表自启动方式,redis启动默认不加载此处配置 redis-server /etc/redis/redis.conf
mysql安装下载
镜像参考redis直接下载对应版本即可。
-v:配置挂载,冒号左边为容器内部想要挂载出去的配置路径,右边为挂载的实际路径
例如:mysql,挂载日志,数据,配置等信息到外部
docker run -p 3306:3306 --name mysql \ -v /mydata/mysql/log:/var/log/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/conf/my.cnf:/etc/mysql/my.cnf \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7
修改配置文件 my.cnf
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] init_connect='SET collation_connection = utf8_unicode_ci' init_connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_unicode_ci skip-character-set-client-handshake skip-name-resolve lower_case_table_names=1
最后说一下文件外部挂载的优缺点:
优点:修改配置方便,不用每次都进入容器内部
缺点:外部挂载方式镜像将不可以打包传递
docker安装使用及用docker安装mysql,Redis,nacos
安装
卸载之前的docket
sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
sudo yum install -y yum-utils //设置存储库
设置仓库地址,默认国外,也可以设置阿里云的
sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
yum-config-manager \ --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docket引擎等组件
sudo yum install docker-ce docker-ce-cli containerd.io
启动docket
sudo systemctl start docker
配置加速镜像
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://chqac97z.mirror.aliyuncs.com"] } EOF
sudo systemctl daemon-reload sudo systemctl restart docker
docket常用命令
systemctl stop docker //关闭docker systemctl restart docker //重启docker systemctl status docker //查看docker状态 systemctl enable docker //设置docker开机自启动 docker images //查看自己服务器的镜像列表 docker search 镜像名 //搜索指定镜像 docker search --filter=STARS=9000 mysql //搜索 STARS >9000的 mysql 镜像 docker pull 镜像名 //拉取docker仓库里的镜像 docker pull 镜像名:tag //拉取docker仓库里指定版本的镜像,具体版本号需要到镜像官网查看(https://hub.docker.com/search?type=image) docker pull mysql 5.7.30 //拉取5.7.30的mysql docker run 镜像名 //运行镜像 docker run 镜像名:Tag //运行指定版本的镜像 docker rmi -f 镜像名/镜像ID //删除一个镜像,镜像没有被别的镜像使用才可以删除 docker rmi -f 镜像名/镜像ID 镜像名/镜像ID 镜像名/镜像ID //删除多个镜像,空格隔开 docker rmi -f $(docker images -aq) //删除全部镜像 -a 意思为显示全部, -q 意思为只显示ID docker image rm 镜像名称/镜像ID //强制删除镜像 docker save 镜像名/镜像ID -o 镜像保存在哪个位置与名字 docker save tomcat -o /myimg.tar //保存Tomcat到myimg.tar里 docker commit -m="提交信息" -a="作者信息" 容器名/容器ID 提交后的镜像名:Tag docker ps //查看正在运行容器列表 docker ps -a //查看所有容器 -----包含正在运行 和已停止的 docker exec -it 容器名 路径//进入容器 里的路径 #删除一个容器 docker rm -f 容器名/容器ID #删除多个容器 空格隔开要删除的容器名或容器ID docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID #删除全部容器 docker rm -f $(docker ps -aq) docker start 容器ID/容器名 //启动容器 docker stop 容器ID/容器名 //停止容器 docker restart 容器ID/容器名 //重启容器 docker kill 容器ID/容器名 //kill 容器 docker cp 容器ID/名称: 容器内路径 容器外路径 //容器内拷文件到外面 docker cp 容器外路径 容器ID/名称: 容器内路径 //容器外拷文件到容器内 docker run -it -d --name 容器别名 镜像名 --restart=always //容器随着docker启动而启动 docker update --restart=always 容器Id 或者 容器名 //修改容器启动配置(设置自启动) docker rename 容器ID/容器名 新容器名 //更改容器名 docker logs container-id //查看容器日志 sudo docker info | grep "Docker Root Dir" //查看docker工作目录 du -hs /var/lib/docker/ //查看docker磁盘占用总体情况 docker system df //查看Docker的磁盘使用具体情况 docker rm `docker ps -a | grep Exited | awk '{print $1}'` //# 删除异常停止的容器 docker rmi -f `docker images | grep '<none>' | awk '{print $3}'` //删除名称或标签为none的镜像
使用docker安装MySQL
sudo docker pull mysql:5.7.39 //拉取mysql镜像到本地 # --name指定容器名字 -v目录挂载 -p指定端口映射(宿主机端口:容器端口) -e设置mysql参数 -d后台运行 sudo docker run --name mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf:/etc/mysql -v /usr/local/mysql/log:/var/log/mysql -v /usr/local/mysql/mysql-files:/var/lib/mysql-files/ -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:5.7 docker exec -it 容器名称|容器id bin/bash //进入容器里 exit //退出容器 -v /usr/local/mysql/mysql-files:/var/lib/mysql-files/
验证:用连接工具测试能不能连接成功,或window下cmd测试
ssh -v -h 3306 IP
使用docker安装Redis
docker pull redis:6.0.10 //拉取镜像
创建配置文件,docker-Redis里面默认没有配置文件,在宿主机创建并挂载到容器里
mkdir /home/redis cd /home/redis vi redis.conf
添加如下内容
bind 0.0.0.0 开启远程权限 appendonly yes 开启aof持久化
启动Redis容器并挂载文件
docker run --name redis -v /home/redis/data:/data -v /home/redis/redis.conf:/usr/local/etc/redis/redis.conf -p 6379:6379 -d redis:6.0.10 redis-server /usr/local/etc/redis/redis.conf docker exec -it redis redis-cli //进入Redis客户端
安装nacos
拉取镜像
docker pull nacos/nacos-server
查看镜像
docker images
启动容器
docker run --env MODE=standalone --name mynacos -d -p 8848:8848 docker.io/nacos/nacos-server
查看启动日志
docker logs -f mynacos
日志中显示nacos服务地址为:
http://172.18.0.2:8848/nacos/index.html
默认账号密码都是nacos
进入nacos容器查看配置
docker ps docker exec -it 容器名或ID /bin/bash ls cd conf/ ls
修改启动配置文件
进入
docker exec -it nacos /bin/bash
进入启动脚本
cd /home/nacos/bin vim docker-startup.sh
以上是docker安装mysql、redis镜像的方法是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

可以通过以下步骤打开 phpMyAdmin:1. 登录网站控制面板;2. 找到并点击 phpMyAdmin 图标;3. 输入 MySQL 凭据;4. 点击 "登录"。

Redis集群模式通过分片将Redis实例部署到多个服务器,提高可扩展性和可用性。搭建步骤如下:创建奇数个Redis实例,端口不同;创建3个sentinel实例,监控Redis实例并进行故障转移;配置sentinel配置文件,添加监控Redis实例信息和故障转移设置;配置Redis实例配置文件,启用集群模式并指定集群信息文件路径;创建nodes.conf文件,包含各Redis实例的信息;启动集群,执行create命令创建集群并指定副本数量;登录集群执行CLUSTER INFO命令验证集群状态;使

如何使用 phpMyAdmin 连接到 MySQL?访问 phpMyAdmin 的 URL,通常为 http://localhost/phpmyadmin 或 http://[您的服务器 IP 地址]/phpmyadmin。输入您的 MySQL 用户名和密码。选择您要连接的数据库。点击 "连接" 按钮以建立连接。

要从 Redis 读取队列,需要获取队列名称、使用 LPOP 命令读取元素,并处理空队列。具体步骤如下:获取队列名称:以 "queue:" 前缀命名,如 "queue:my-queue"。使用 LPOP 命令:从队列头部弹出元素并返回其值,如 LPOP queue:my-queue。处理空队列:如果队列为空,LPOP 返回 nil,可先检查队列是否存在再读取元素。

如何清空 Redis 数据:使用 FLUSHALL 命令清除所有键值。使用 FLUSHDB 命令清除当前选定数据库的键值。使用 SELECT 切换数据库,再使用 FLUSHDB 清除多个数据库。使用 DEL 命令删除特定键。使用 redis-cli 工具清空数据。

Redis计数器是一种使用Redis键值对存储来实现计数操作的机制,包含以下步骤:创建计数器键、增加计数、减少计数、重置计数和获取计数。Redis计数器的优势包括速度快、高并发、持久性和简单易用。它可用于用户访问计数、实时指标跟踪、游戏分数和排名以及订单处理计数等场景。

选择MySQL的原因是其性能、可靠性、易用性和社区支持。1.MySQL提供高效的数据存储和检索功能,支持多种数据类型和高级查询操作。2.采用客户端-服务器架构和多种存储引擎,支持事务和查询优化。3.易于使用,支持多种操作系统和编程语言。4.拥有强大的社区支持,提供丰富的资源和解决方案。

使用 Redis 命令行工具 (redis-cli) 可通过以下步骤管理和操作 Redis:连接到服务器,指定地址和端口。使用命令名称和参数向服务器发送命令。使用 HELP 命令查看特定命令的帮助信息。使用 QUIT 命令退出命令行工具。
