Docker 学习之安装Mysql 5.7

一.下载镜像

[root@localhost one]# docker pull mysql:5.7
Trying to pull repository docker.io/library/mysql ...
sha256:de482b2b0fdbe5bb142462c07c5650a74e0daa31e501bc52448a2be10f384e6d: Pulling from docker.io/library/mysql
f7e2b70d04ae: Pull complete
df7f6307ff0a: Pull complete
e29ed02b1013: Pull complete
9cb929db392c: Pull complete
42cc77b24286: Pull complete
a6d57750cc73: Pull complete
79510826e343: Pull complete
07e462ad61e2: Pull complete
fa594cb5b94d: Pull complete
1b44278270ad: Pull complete
3edb3c323f55: Pull complete
Digest: sha256:de482b2b0fdbe5bb142462c07c5650a74e0daa31e501bc52448a2be10f384e6d
Status: Downloaded newer image for docker.io/mysql:5.7

查看是否成功,出现以下为成功,如果下载比较慢,可以使用

docker pull registry.cn-hangzhou.aliyuncs.com/acs-sample/mysql:5.7

-------------------------------------------------------------------------------------------------------------------------

[root@localhost one]# docker images
REPOSITORY                          TAG                 IMAGE ID            CREATED             SIZE
docker.io/mysql                     5.7                 ee7cbd482336        5 days ago          372 MB
registry.fedoraproject.org/fedora   latest              69c5db8b64a7        2 months ago        275 MB

二.运行Mysql

 创建数据映射文件夹

mkdir -p ~/mysql/data ~/mysql/logs ~/mysql/conf

  运行


docker run -p 3306:3306 --name mysql5.7 -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql  -e MYSQL_ROOT_PASSWORD==root -d mysql:5.7


--name: 以什么名字启动容器

-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。

-v -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。

-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。

-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。

-e MYSQL_ROOT_PASSWORD=root:初始化 root 用户的密码。

-d 后台运行

//查看容器是否运行成功
[root@localhost one]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
5ba42dbf117f        mysql:5.7           "docker-entrypoint..."   12 seconds ago      Up 10 seconds       0.0.0.0:3306->3306/tcp, 33060/tcp   mysql5.7

开启远程访问

//选择数据库
use mysql;
//开启权限<第一个root为用户,第二个root为密码,请对应设置>
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

//更新配置
FLUSH PRIVILEGES;

猜你喜欢

转载自blog.csdn.net/LQM1528490339/article/details/88386736
今日推荐