玩转docker-简单实例

创建容器   

主要是想通过一个实例来说明docker的最显著的特征:数据隔离,顺便带领大家熟悉一下docker的基本命令用法,揭开其神秘的面纱,让大家也能领略到,当今互联网大数据行业,最火的虚拟化技术,也不过如此,哈哈!

创建mysql5.6容器 1master+2个slave,这里仅展示mysql-slave1的容器创建并启动的方法,另外两个节点,自己敲一下,

需要注意的是,初次初始化mysql容器,必须要初始化一个数据库密码,即MYSQL_ROOT_PASSWORD 所展示的内容,默认密码root.

8e3e4be978c9d7bcb6d4b9dac93911b64aa.jpg

验证容器状态

4cab096c910f05e3050afe8aeff5d8c0b96.jpg

通过主机命令行进入master容器

执行:docker exec -it mysql-master bash 

cf5563f2f266aef1e11d665db86fc73b6ca.jpg

在master中创建一个数据库master 

9dbd2a53a591985b34a9fc34614b2e84fa4.jpg

ea2b6b4995184e5eae7406aafa49ef021a6.jpg

在slave1中也创建一个数据库master 

5b9ab315946cf9b7c3cb7b9f8b4e623857e.jpg

efaff23b47533af2328127e9131d5315939.jpg

通过以上的信息说明master与slave是数据隔离的,
所以我们可以通过docker创建N个mysql容器,
然后就能以很小的代价就能学习《高可用MySQL》中的数据模型 再也不用发愁机器不够用

容器相互访问

登录到slave1容器(如下操作,master容器也是一样操作,安装必要工具)

[root@bogon ~]# docker exec -it mysql-slave1 bash
root@1651d1cab219:/#

查看容器的操作系统环境
uname -a

acd8ac80a5f3897f49512955c026096a03e.jpg

 执行以下vi 命令,发现报异常,vi command not found ,,说明该容器中,尚未安装vi命令

直接执行,apt-get update 更新一下source(需要注意的是,虚拟机必须得保证能访问外网,因为需要在线安装)

aab05937bc128c1aa8f41d0e97002b37ba7.jpg

等执行完毕,apt 源更新完,执行 apt-get  install vim* 执行安装vim操作

04790ec4b70f9381639621955e6babf1c19.jpg

执行过程时间将会很长,这取决于个人网速哈,

安装上述vim命令工具之后,紧接着需要安装如下几个工具

apt-get update && apt-get install net-tools 

apt-get update && apt-get install iputils-ping 

因为需要用到上述工具,安装完的效果图如下:

bb16e30fb23545453519de2efe95c4db888.jpg

通过ping slave1的容器ip发现是可以ping通的,所以,我们可以通过docker 容器直接远程连接master的数据库

最后通过slave1的docker连接到master的容器mysql服务器上

master的服务器mysql账号root赋值权限

3edd103ef137db408642be3222e04ea8e9c.jpg

slave1服务器执行连接master服务器如下命令:

01d98759a5b6176bdd2b2014cf5005325ae.jpg

在master上将master数据库删除,看slave1的终端是否也不显示已删除的库

master操作

80c161276d649d35900e1df6b7521ecb0fb.jpg

slave1操作

e9965f0b16990159283854492c455053366.jpg

发现通过slave1容器远程连接的master容器,数据库已经没了

小插曲

    在初次建立docker mysql容器实例的时候,中间报了一个如下错误:

1c8c236352b0740a62d92a77b27e476ad86.jpg

不管如何启动mysql-master 或者 mysql-slave 实例,总是出现上述异常,后来,问了一下度娘,终于找到了解决方法,原来是因为doker 的 RPM packages需要升级了,   最后打通了此条探索的道路,甚是不容易哈,解决方法,现共享如下:

yum downgrade docker docker-client docker-common

    上述是本节的主要内容,现分享给各位小伙伴们,欢迎各位能提出宝贵的意见或者建议,在成为土豪路上一起成长! 

转载于:https://my.oschina.net/yaukie/blog/2983954

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值