系列目录:

【Docker】 CentOS7 安装 Docker 及其使用方法 ( 一 )

【Docker】 使用Docker 在阿里云 Centos7 部署 MySQL 和 Redis (二)

【Docker】 .Net Core 3.1 webapi 集成EF Code First,使用MySql进行业务操作 、配置swagger (三)

.......持续不定期更新中

前期准备: 阿里云服务器一台,连接工具MobaXterm。

安装Docker的方法:https://www.cnblogs.com/simawenbo/p/13644326.html

部署MySQL

1.拉取镜像

docker pull mysql
docker pull mysql:版本号

2.创建容器

docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 \
-v /usr/local/docker/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /usr/local/docker/mysql/logs:/var/log/mysql \
-v /usr/local/docker/mysql/data:/var/lib/mysql \
-d mysql --lower_case_table_names=1

-p 映射端口号

-e 设置密码

-name 设置容器名称发

-d 所用镜像

-v 把容器内部文件挂载至宿主机中,方便修改。

--lower_case_table_names=1 忽略表名大小写,存储都用小写,不加可能无法正常启动

3.修改my.inf文件

执行完第2步后会发现有报错,因为my.cnf没有配置成功。

删除宿主机 /usr/local/docker/mysql/conf/ 中的  my.cnf 文件夹,并在 /usr/local/src/mysql/conf/ 新建my.cnf文件,文件内容如下所示:

[client]
default-character-set=utf8mb4 [mysql]
default-character-set=utf8mb4 [mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
secure-file-priv= NULL
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
max_connections=10000
default-time_zone='+8:00'
character-set-client-handshake=FALSE
character_set_server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci'
# Custom config should go here
!includedir /etc/mysql/conf.d/

4. 开启容器

Docker start mysql

5. 进入容器,登录MySQL

docker exec -it mysql bash
mysql -uroot -p

6. 配置密码并配置远程访问权限,刷新系统。

alter user 'root'@'localhost' identified with mysql_native_password by '新密码';
flush privileges;

7.新建一个用户用于远程访问,并给这个用户访问权限。

CREATE USER '新用户名称'@'%' IDENTIFIED WITH mysql_native_password BY '新密码';
GRANT ALL PRIVILEGES ON *.* TO '新用户名'@'%';

8.在客户端电脑访问阿里云上的数据库

ps.在阿里云上需要放通3306端口!如果连不上请检查云服务器网络安全组设置!

部署Redis

1.拉取镜像

docker pull redis

2.在宿主机准备映射文件,修改映射配置文件

redis的配置文件 redis.conf 官网下载: http://download.redis.io/redis-stable/redis.conf

在/usr/local/docker/redis 目录下创建配置文件,并将官网redis.conf文件配置复制下来进行修改

在/usr/local/docker/redis 目录下创建目录data

3.修改启动默认配置(从上至下依次):

bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问

protected-mode no #默认yes,开启保护模式,限制为本地访问

daemonize no #默认no,改为yes意为以守护进程方式启动,可后台运行,改为yes会使配置文件方式启动redis失败(因为run docker的时候已经用了-d 有冲突)

databases 16 #数据库个数(可选)。

dir  ./  #输入本地redis数据库存放文件夹(可选)

appendonly yes #redis持久化(可选)

requirepass  密码 #配置redis访问密码

4.创建容器

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

命令解释说明:

-p 端口映射。

–name 指定该容器名称。

-v 挂载目录。

-d redis 表示后台启动redis。

redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,加载的是挂载目录/usr/local/docker/redis/redis.conf 文件。

–appendonly yes 开启redis 持久化。

5.访问redis

进入容器

docker exec -it redis bash 

然后登录redis

redis-cli

ps.查看日志命令为:docker logs -f -t --tail 100 redis

-f : 跟踪日志输出

-t : 显示时间戳

--tail 100 : 显示最新100行

redis : 容器名

【Docker】 使用Docker 在阿里云 Centos7 部署 MySQL 和 Redis (二)的更多相关文章

  1. 阿里云CentOS7部署ASP.NET Core

    本文主要介绍了阿里云CentOS7下如何成功的发布ASP.Core应用并使用nginx进行代理, 并对所踩的坑加以记录; 环境.工具.准备工作 服务器:阿里云64位CentOS 7.4.1708版本; ...

  2. 阿里云CentOS7部署MySql8.0

    本文主要介绍了阿里云CentOS7如何安装MySql8.0,并对所踩的坑加以记录; 环境.工具.准备工作 服务器:阿里云CentOS 7.4.1708版本; 客户端:Windows 10; SFTP客 ...

  3. 阿里云 Centos7 部署 Django 项目

    前期准备 阿里云服务器 mysql数据库 已经本地运行成功的项目 阿里云服务器的环境配置 Git #代码管理 Gitlab #代码托管,要求服务器内存不低于2G,我选择放弃 Mysql #连接数据库 ...

  4. 阿里云 centos7 安装mysql数据库

    环境:阿里云ECS服务器,系统为centos7.2 删除原来的数据库: centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会直接覆盖掉这个数据库,当然也可以手动删除一下: [ ...

  5. 阿里云Centos7.x MySql安装教程示例

    创建用户 useradd mysql; passwd mysql; 下载(比如:5.5.61) 地址 https://dev.mysql.com/downloads/mysql/5.6.html#do ...

  6. 阿里云 centos7.X mysql数据库安装、配置

    前言 1024阿里云搞活动,ecs云服务新用户促销活动,活动连接就不贴了,买了之后暂时不知道要做啥,想着先安装mysql数据库. 步骤 root用户登录进来 1.配置mysql的yum源,yum lo ...

  7. 阿里云Centos7部署私人CSGO服务器

    大四毕业生,论文和答辩分别以1.8%的重复率和只答不辨的态度双双过关.现在就是在家等着学校发毕业证了.顺带学学驾驶...可是我这么一个喜欢折腾的人,怎么能够让自己接受这么无聊的咸鱼时光呢?因为这个寒假 ...

  8. 阿里云上面部署mysql

    0.卸载已有的mysql 系统中可能早已存在mysql数据库,所以在安装之前我们需要将其卸载掉. # rpm -qa|grep -i mysql 该命令将显示已经安装了的mysql软件,之后通过下面的 ...

  9. 阿里云CentOS7.3服务器通过Docker安装Nginx

    前言 小编环境: 阿里云CentOS7.3服务器 docker 下面分享一次小编在自己的阿里云CentOS7.3服务器上使用Docker来安装Nginx的一次全过程 温馨小提示: 如果只是希望单纯使用 ...

随机推荐

  1. XCTF-crypto---转轮机加密

    转轮密码机是由一个输入键盘和一组转轮组成的,每个转轮上标有26个字母,字母的顺序随意,转轮之间由齿轮进行连接,当一个转轮转动时,可以讲一个字母转化为另一个字母. 工作原理: 转轮机由多个转轮构成,每个 ...

  2. 理解 Linux 的硬链接与软链接(转)

    Linux 的文件与目录 现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用.在 UNIX 系统中,操作系统为磁盘上的文本与图像.鼠标与键盘 ...

  3. 协程gevent模块和猴子补丁

    # pip 装模块 greenlet和gevent # 协程 # 与进程.线程一样也是实现并发的手段 # 创建一个线程.关闭一个线程都需要创建寄存器.栈等.需要消耗时间 # 协程本质上是一个线程 # ...

  4. js,昨天的日期

    var mydate = new Date(); var yester = mydate-24*60*60*1000; var yesterday = new Date(); yesterday.se ...

  5. HDU100题简要题解(2020~2029)

    HDU2020 绝对值排序 题目链接 Problem Description 输入n(n<=100)个整数,按照绝对值从大到小排序后输出.题目保证对于每一个测试实例,所有的数的绝对值都不相等. ...

  6. vue的html2canvas将dom转化为图片时踩得坑

    一.html2canvas中图片涉及跨域图片 应用场景:做个投票活动,将参赛者的信息转化成图片截图分享.用户上传图片上传到腾讯云cos桶中,html2canvas只能转换本地资源的图片,涉及跨域的图片 ...

  7. iOS问题:pch not found

    问题描述: clang: error: no such file or directory: '/Users/apple/Desktop/迅点App_Mark/FaceHelp/FaceHelp-Pr ...

  8. WebsitePanel密码解密

    WebsitePanel是一套Windows系统中的虚拟主机管理系统,可以同时管理多台服务器. 通过反编译该系统的dll发现该系统的密码加密方式可逆. 解密流程 1,获取密钥 密钥保存在  Enter ...

  9. 项目开发中的git简单使用

    原文地址: https://www.zhuyilong.fun/tech/the-blog-git.html 示例远程仓库地址: https://github.com/zhu-longge/gitWo ...

  10. 6. Git工作流

    6.1 git工作流理解 在项目开发过程中使用 Git 的方式 6.2 git工作流分类 集中式工作流 像 SVN 一样,集中式工作流以中央仓库作为项目所有修改的单点实体.所有修改都提交到 Maste ...