docker一分钟部署最新版mysql8(远程连接+数据持久化)(一部到位)
- 环境准备 docker19.03.12
[root@node ~]# docker version
Client: Docker Engine - Community
Version: 19.03.12
API version: 1.40
Go version: go1.13.10
Git commit: 48a66213fe
Built: Mon Jun 22 15:46:54 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.12
API version: 1.40 (minimum version 1.12)
Go version: go1.13.10
Git commit: 48a66213fe
Built: Mon Jun 22 15:45:28 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.2.13
GitCommit: 7ad184331fa3e55e52b890ea95e65ba581ae3429
runc:
Version: 1.0.0-rc10
GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd
docker-init:
Version: 0.18.0
GitCommit: fec3683
- 直接用docker run下载并运行容器
docker run -d -p:3307:3306 -v /mydir/mysql/conf:/etc/mysql -v /mydir/mysql/data:/var/lib/mysql -v /mydir/mysql/mysql-files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=rootpwd --name dockermysql mysql
说明 :
-d:后台运行
-p:端口映射:(3307)主机端口:(3306)容器端口
-v :volume文件挂载,可以理解为文件双向绑定,主机中的文件修改后容器中的文件也将一起改变,同理,容器中的文件修改后主机的文件也会同样一起改变,主要用与数据持久化以及配置的修改,避免删除容器后数据、配置的丢失 。格式 -v 主机文件(需要事先建好目录或者文件):容器文件
-e:传递环境变量,本例中(MYSQL_ROOT_PASSWORD=rootpwd)代表设置root密码为rootpwd,使用远程navicat或者其他连接工具可直接输入该密码进行连接
–name:(dockermysql)自定义容器名称
mysql 容器镜像名(也可以用镜像id)
- 远程连接测试
来源:oschina
链接:https://my.oschina.net/u/4400107/blog/4500793