Centos7.2 安装docker、mysql和redis
环境信息

Docker是什么?
Docker就是一个平台,这个平台具备开发、发布和运行应用程序的功能,在项目生命周期中,我们可以运用Docker实现快速交付、测试和部署。Docker通过将运行环境打包成一个镜像,就可以在安装了Docker的任意平台上运行(一次构建,到处运行)。
安装Docker
centos版本推荐7以上,centos6安装docker比较麻烦。如果以前安装过docker,需要先清理:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装docker需要的工具包
sudo yum install -y yum-utils
如果提示下图内容:

这是由于当前系统没有 CentOS-Base.repo 文件,使用命令重新下载一个:curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
添加yum源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docker
// 中途需要输入y进行确认
sudo yum install docker-ce docker-ce-cli containerd.io
配置镜像加速地址(阿里云)
5.1 首先登录阿里云控制台,选择容器镜像服务

5.2 复制命令并执行

配置docker自启
systemctl enable docker
安装mysql
mysql的容器我们可以让docker创建和执行,但是mysql的数据不能仅存在容器内,需要我们开辟一个外部路径专门用来存储mysql数据。
安装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:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
简单讲解一下,
-p 3306:3306:将容器的3306端口映射到主机的3306端口
-v 源地址(宿主机):目标地址(容器),将主机的/mydata/mysql/log挂载到mysql容器的/var/log/mysql目录
-e 指定容器内的环境变量,这里是指定mysql密码为root
-d 后台运行容器,并返回容器ID
mysql:5.7 指定mysql版本,具体版本可以在https://hub.docker.com 查询验证mysql是否安装成功
docker ps
如下,如果显示了mysql就是安装成功了

开启mysql远程访问权限:
先进入mysql容器
docker exec -it mysql /bin/bash
登录mysql,密码就是我们初始化时设置的root
mysql -uroot -p
然后开始开启远程访问权限
use mysql;
select host,user from user;

查看host不是%,需要先更新成%(如果是%跳过,直接进行下面的授权):update user set host = '%' where user = 'root';
然后开始授权
// 此句会开启root的远程访问权限,实际根据场景应该开一个权限小的账号
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
// 刷新权限
flush privileges;
上面对mysql本身开启了远程访问权限,下面需要配置防火墙,阿里云还需要在控制台配置安全组开放3306端口。
# 如果firewalld 没有开启,先开启下
service firewalld start
#开放3306端口
firewall-cmd --permanent --add-port=3306/tcp;
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
最后配置mysql自启:
docker update --restart=always mysql
此时使用navicat 可以访问MySQL了
安装redis
首先创建redis数据存放目录和配置文件
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
// 编辑配置文件,开启持久化
vi /mydata/redis/conf/redis.conf
// 配置文件中加入下面的命令
appendonly yes
安装redis
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --requirepass "123456" 简单讲解一下,
-p 6379:6379:将容器的6379端口映射到主机的6379端口
-v /mydata/redis/data:/data,将主机的/mydata/redis/data挂载到redis容器的/data目录
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf,将主机的redis.conf文件替换容器的redis.conf文件,这样我们可以在主机上对redis进行配置
redis-server /etc/redis/redis.conf,通过redis.conf运行redis
--requirepass "123456",设置密码为123456
添加防火墙规则开启redis远程访问(阿里云还需要配置安全组开放6379端口):
#开放6379端口
firewall-cmd --permanent --add-port=6379/tcp;
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
配置redis自启:
docker update --restart=always redis
Centos7.2 安装docker、mysql和redis的更多相关文章
- Centos7上安装docker (转)
Centos7上安装docker Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如 ...
- docker(一) Centos7下安装docker
docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...
- CentOS7下安装docker(Docker系列1)
CentOS7下安装docker 系统要求 为了安装docker,需要准备 64-bit的CentOS 7 删除非官方的Docker包 yum的仓库中有一个很旧的Docker包, 现在Docker官方 ...
- centos7上安装docker社区版
container(容器) docker(集装箱) 容器的优点 1. 启动速度快 2. 节省资源 3. 兼容性高 保证机器正常上网 #ping www.baidu.com CPU需要支持虚拟化 # g ...
- centos7下安装docker与镜像加速
1.背景 centos7下安装docker 2.安装 第一步:检查是否为centos7版本 第二步:依赖环境安装 执行如下两个命令: yum -y install gcc yum -y install ...
- 在Centos7中安装Docker并实例化Mysql
首先 本文是一篇安装流程,从初始的Centos7安装Docker后实例化一个Mysql的整个流程,其中会包含一些需要注意的疑点和坑. 实例化的Mysql是将数据和配置保存在宿主机. 注意,在安装Doc ...
- centos7.0安装docker报错
使用centos7.0安装dockers时出现Transaction check error错误. yum install docker Transaction check error: file / ...
- Linux(centos7)下安装Docker
近期公司开始推Docker技术.这个系列的文章都是基于CentOS7系统下进行讲解的. Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器 ...
- Centos7快速安装docker
偶然间发现,docker的安装好容易啊 系统环境:centos7.3 yum源: docker:https://mirrors.aliyun.com/docker-ce/linux/centos/do ...
随机推荐
- shp文件转dwg并创建文本标注
不得不说,ArcGIS 和 CAD 之间的兼容性非常差,shapefile文件和dwg文件之间互相转换会丢失各种属性,但是很多时候他们之间的转换对我们来说是刚需.通常我们都是通过第三方软件(如FME) ...
- 云计算之路-出海记-小目标:Hello World from .NET 5.0 on AWS
品尝过船上的免费晚餐,眺望着 aws 上搭建博客园海外站的宏伟目标,琢磨着眼前可以实现的小目标,不由自主地在屏幕上敲出了 -- "Hello World!",就从这个最简单朴实的小 ...
- 我叫Mongo,收了「查询基础篇」,值得你拥有
这是mongo第二篇「查询基础篇」,后续会连续更新6篇 mongodb的文章总结上会有一系列的文章,顺序是先学会怎么用,在学会怎么用好,戒急戒躁,循序渐进,跟着我一起来探索交流. 通过上一篇基础篇的介 ...
- Appium学习之驱动真机运行
一.Appium工具的简单原理 Appium工具可以分为:客户端(appium-client).服务端(appium-server)和移动设备端(模拟器或者真机).客户端支持多语言,如:python- ...
- 年轻人的第一个 Docker 应用,大大提高生产力!
上一篇:年轻人的第一个 Spring Boot 应用! 哈哈,标题我抄了雷总的,不重要哦,重要的是 Docker 真的很年轻,虽然现在才不到 8 岁,但却是个冉冉升起的巨星,火得一塌糊涂. 这几年 D ...
- Cocos Creator与VS Code整合代码提示问题
Cocos Creator与VS Code整合开发配置 在Cocos Creator中依次点击下面框中的菜单 VS Code工作流 配置Cocos Creator的默认编辑器 Cocos Creato ...
- SpringBoot中的响应式web应用
目录 简介 Reactive in Spring 注解方式使用WebFlux 编程方式使用webFlux Spring WebFlux的测试 总结 简介 在Spring 5中,Spring MVC引入 ...
- Redis下载
Windows版下载地址 https://github.com/tporadowski/redis/releases Linux版下载地址 https://redis.io/download
- 异常记录-Gradle依赖掉坑之旅
前言 最近在项目中遇到了一个问题,死活拉不下来依赖,耗费了一整天,感觉自己真是菜的抠脚. 没想到今天脑子一清醒,刷刷的问题逐个击破了. 问题描述: 项目成员添加了新的依赖,然后我这边项目拉下来,bui ...
- Python的ConfigParser模块读取ini配置文件 报错(持续更新总结)
1.ConfigParser.MissingSection什么的错误巴拉巴拉一堆,其实根本上就是没有读到配置文件,然后我去检查了一遍路径,发现没有问题,我是将文件的路径作为一个字符串拼接好传到另一个专 ...