参考 https://www.cnblogs.com/CloudMan6/p/7624556.html   前面我们安装部署了 Rex-Ray ,并且成功配置 Virtualbox backend ,今天学习如何创建和使用 Rex-Ray volume   在 docker1 或 docker2 上执行如下命令创建 volume   rexray volume create --size 2 'c:\share\mysqldata'   --size 指定创建volume的大小,单位GB   最后是创建volume的绝对路径,因为 \ 是特殊字符,需要用单引号引起来   root@docker1:~# rexray volume create --size 2 'c:\share\mysqldata' ID                                    Name       Status     Size cd335365-dea0-4e22-95ce-daa0258595e8  mysqldata  available  2 root@docker1:~# rexray volume ls ID                                    Name          Status       Size c2b3c553-dc43-4df1-8a72-faa26a9ee861  docker1.vmdk  attached     20 cec5b10d-8bc1-4326-bb9b-e3add075f3f1  docker2.vmdk  unavailable  20 cd335365-dea0-4e22-95ce-daa0258595e8  mysqldata     available    2 root@docker1:~# docker volume ls DRIVER              VOLUME NAME rexray              docker1.vmdk rexray              docker2.vmdk rexray              mysqldata     076、创建Rex-Ray volume (2019-04-23 周二) 随笔 第1张 076、创建Rex-Ray volume (2019-04-23 周二) 随笔 第2张   创建mysql容器并使用Rex-Ray volume   root@docker1:~# docker run --name mydb_on_docker1 -v mysqldata:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=passw0rd -d mysql   root@docker1:~# docker volume inspect mysqldata [     {         "CreatedAt": "0001-01-01T00:00:00Z",         "Driver": "rexray",         "Labels": null,         "Mountpoint": "",         "Name": "mysqldata",         "Options": null,         "Scope": "global",         "Status": {             "availabilityZone": "",             "fields": null,             "iops": 0,             "name": "mysqldata",             "server": "virtualbox",             "service": "virtualbox",             "size": 2,             "type": "HardDisk"         }     } ] root@docker1:~# docker inspect mydb_on_docker1 | jq .[0].Mounts [   {     "Type": "volume",     "Name": "mysqldata",     "Source": "",     "Destination": "/var/lib/mysql",     "Driver": "rexray",     "Mode": "",     "RW": true,     "Propagation": ""   } ]     下图可以看到 Rex-Ray volume mysqldata 已经挂载到docker1 上   076、创建Rex-Ray volume (2019-04-23 周二) 随笔 第3张 076、创建Rex-Ray volume (2019-04-23 周二) 随笔 第4张     当前实验拓扑如下图所示:   076、创建Rex-Ray volume (2019-04-23 周二) 随笔 第5张   下面登录数据库,并对数据库就行一些修改,然后销毁mysql容器   root@docker1:~# docker exec -it mydb_on_docker1 bash root@f00b063008f8:/# mysql -p    #    登录数据库 Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is 8 Server version: 8.0.15 MySQL Community Server - GPL Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.   mysql> use mysql    #    切换到mysql库 Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A   Database changed mysql> create table my_id(id int(4));    #       创建表 Query OK, 0 rows affected (0.03 sec)   mysql> insert my_id values(111);    #    在表中插入数据 Query OK, 1 row affected (0.01 sec)   mysql> select * from my_id;    #    查询表中数据 +------+ | id   | +------+ |  111 | +------+ 1 row in set (0.00 sec)   mysql> exit Bye root@f00b063008f8:/# exit root@docker1:~# docker stop mydb_on_docker1    #    stop容器 mydb_on_docker1 root@docker1:~# docker rm  mydb_on_docker1    #    销毁容器 mydb_on_docker1     最后可以看到,mysqldata 自动从docker1 上卸载了   076、创建Rex-Ray volume (2019-04-23 周二) 随笔 第6张 076、创建Rex-Ray volume (2019-04-23 周二) 随笔 第7张  
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄