【云原生】docker环境中安装mysql、redis服务

79 阅读4分钟

我正在参加「掘金·启航计划」

要想使用docker,最低成本只需要一台服务器,但还需要在服务器中安装docker环境,使用docker能快捷的搭建诸如mysql、redis的独立服务,服务之间相互独立,避免了多个服务需要多台服务器的弊端等

一 安装docker环境

进入linux服务器

首先执行卸载之前老版本的docker和相关依赖命令

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安装 yum-utils 软件包(它提供 yum-config-manager 实用程序)并设置存储库

sudo yum install -y yum-utils
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

安装最新版本docker

安装过程需要进行多次的输入 y 选择,请耐心等待

 sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

安装完成启动docker

sudo systemctl start docker

查看docker是否安装成功

docker -v

​编辑

更多安装详细可参考docker官方文档 点击直达

二 docker安装mysql

查看mysql在docker中央仓库的各个版本

docker search mysql

​编辑

拉取mysql镜像,这里选择官方mysql:5.7版本

注:推荐使用8.0以下的版本,避免出现不可预料的错误导致连接失败

docker pull mysql:5.7

​编辑

查看镜像

docker images

​编辑

创建mysql容器

docker run \
-p 3306:3306 \
--name mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7

注:MYSQL_ROOT_PASSWORD :设置mysql登录密码 默认账户名为 root

​编辑

查看mysql容器

docker ps

构建连接,这里使用Navicat

​编辑

​编辑

如果连接失败或被拒绝,可能是需要设置远程连接

配置mysql远程连接

进入mysql容器

docker exec -it 容器id/容器名称 bash

输入mysql -u root -p 并输入运行时的初始化密码

​编辑

配置root账号运行远程访问

use mysql;  //切换数据库
update user set host='%' where user='root'; //允许root用户远程访问
select user,host from user;   //查询
flush privileges;  //刷新权限立即生效

三 docker安装redis

1.查看redis各个版本

docker search redis

2.拉取redis最新镜像版本

docker pull redis

3.新建挂载文件

因为 redis 默认配置你会发现只能够本地连接,不能进行远程访问,使用 Redis Desktop Manager连接都会报错,因此需要手动挂载 redis 配置文件

mkdir -p /root/docker/redis/data
mkdir -p /root/docker/redis/conf

4.新建配置文件redis.conf在刚刚新建的/redis/conf文件夹下

vim redis.conf

#redis.conf文件内容
#bind 127.0.0.1 //允许远程连接
protected-mode no
appendonly yes //持久化
requirepass 123456 //密码 
slave-read-only no  //设置读写权限

5.构建redis容器

docker run --name redis -p 6379:6379 -v /root/docker/redis/data:/data -v /root/docker/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server --appendonly yes

释义说明:

  • –name:给容器起一个名
  • -p:端口映射 宿主机:容器
  • -v:挂载自定义配置 自定义配置:容器内部配置
  • -d:后台运行
  • redis-server --appendonly yes: 在容器执行redis-server启动命令,并打开redis持久化配置

6.查看redis容器

docker ps

7.查看redis日志

docker logs 容器id

8.使用工具连接redis测试

向前走,不停留