原创
Docker安装MySQL和Redis
温馨提示:
本文最后更新于 2018年07月11日,已超过 2,326 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
Docker安装MySQL
安装命令
[root@lzhpo-ecs ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/mysql 5.7 e1e1680ac726 3 weeks ago 373 MB
[root@lzhpo-ecs ~]# run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 e1e1680ac726
其实,镜像ID也可以换成容器名称加上标签(docker.io/mysql:5.7)
安装遇到的问题
1. 无法运行MySQL容器
无法运行MySQL容器:
问题解析:
docker服务启动时定义的自定义链DOCKER由于某种原因被清掉,
重启docker服务及可重新生成自定义链DOCKER。
解决办法:重启Docker。
systemctl restart docker
2. 无法使用Navicat连接阿里云ECS中使用Docker安装的MySQL
进入容器内部就可以使用,但是无法使用Navicat连接。
解决办法:开放阿里云的安全组规则中的3306端口。
如果是自己本机安装的Centos7系统,就开放3306端口,阿里云服务器是直接在阿里云的控制台的安全组规则那里开放端口。
# 启动防火墙
systemctl start firewalld.service
# 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp--permanent
# 查看开放的端口
firewall-cmd --list-ports
# 查看监听的端口
netstat -lntp
# 查看监听的3306端口被谁占用了
netstat -lnp|grep 3306
# 删除开放的端口
firewall-cmd --zone= public--remove-port=3306/tcp --permanent
同时,还要开放MySQL权限以供外部环境使用root账号连接:
mysql> use mysql;
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
mysql> flush privileges;
如果是MySQL8
:
mysql> use mysql;
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Lzp123456';
mysql> flush privileges;
连接成功:
Docker安装Redis
[root@aliyun-lzhpo-ecs ~]# docker pull redis
Using default tag: latest
Trying to pull repository docker.io/library/redis ...
latest: Pulling from docker.io/library/redis
1ab2bdfe9778: Pull complete
966bc436cc8b: Pull complete
c1b01f4f76d9: Pull complete
8a9a85c968a2: Pull complete
8e4f9890211f: Pull complete
93e8c2071125: Pull complete
Digest: sha256:9755880356c4ced4ff7745bafe620f0b63dd17747caedba72504ef7bac882089
Status: Downloaded newer image for docker.io/redis:latest
[root@aliyun-lzhpo-ecs ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/redis latest f7302e4ab3a8 3 weeks ago 98.2 MB
[root@aliyun-lzhpo-ecs ~]# docker run --name redis -d -p 6379:6379 f7302e4ab3a8
69694881429c130ba5519827b6789a5b2be87f83a580030e5e9fd36c2de2a544
同样的,还是要去阿里云的控制台开放6379
端口安全组:
连接成功:
- 本文标签: Docker MySQL Redis
- 本文链接: http://www.lzhpo.com/article/28
- 版权声明: 本文由lzhpo原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权