栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

企业运维实战--Docker三剑客 之 docker-machine

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

企业运维实战--Docker三剑客 之 docker-machine

介绍

DOCKER技术在推出后掀起了一阵容器化技术的热潮,容器化使得服务的部署变得极其简易,这为微服务和分布式计算提供了很大的便利。

为了把容器化技术的优点发挥到极致,docker公司先后推出了三大技术:docker-machine,docker-compose,docker-swarm,可以说是几乎实现了容器化技术中所有可能需要的底层技术手段。

doceker-machine是在解决docker运行环境的问题 docker-compose是在解决容器编排的问题
docker-swarm是解决多主机多个容器的部署调度的问题

1.docker-machine

Docker Machine是一个简化安装Docker环境的工具,作用是创建和管理docker主机。

1.1.machine安装

安装包:
docker-machine-Linux-x86_64-0.16.1
这个是二进制文件,只需要增加执行权限

mv docker-machine-Linux-x86_64-0.16.1 /usr/local/bin/docker-machine
chmod  +x /usr/local/bin/docker-machine

在真机上,我们需要下载get-docker脚本到http发布目录下并修改一下get-docker.sh
cd /var/www/html
wget https://get.docker.com/
vim get-docker.sh

yum_repo="http://172.25.76.250/docker-ce.repo"

yum源设置到apache发布目录中的docker-ce.repo
vim docker-ce.repo

[docker]
name=docker-ce
baseurl=http://172.25.76.250/20
gpgcheck=0

其中20目录里有docker-ce-19-03版本所有的rpm包

准备一台虚拟机server3 将server1,server3做免密处理:

ssh-keygen
ssh-copy-id server3:

docker-machine create --driver generic --engine-install-url "http://172.25.0.250/get-docker.sh" --generic-ip-address=172.25.0.3 server3

server3:
ps ax
可以看到在server3上以及开始执行安装docker-ce动作
在server5上查看docker-machine的进程
能够看到运行在server3上

1.2.使用docker-machine

完成之后,我们可以使用docker-machine来控制server3

docker-machine stop server2
docker-machine restart server2
docker-machine status server2
docker-machine config server2

显示访问server3所需的环境变量,最后一行就是控制server3的方式

docker-machine env server3

当控制server3之后docker images看到的是被控制的容器的镜像
将下面几个组件放置这个目录下

cd /etc/bash_completion.d
mv /root/*.bash .

vim .bashrc

PS1='[u@h W$(__docker_machine_ps1)]$ '

source .bashrc

其中若一直出现 -bash: __docker_machine_ps1: command not found
则在.bashrc 中添加

source /etc/bash_completion.d/docker-machine-wrapper.bash
source /etc/bash_completion.d/docker-machine-prompt.bash
source /etc/bash_completion.d/docker-machine.bash

然后再source就可以

退出当前shell,重新登陆即可生效

[root@foundation76 Desktop]# ssh root@172.25.76.5
[root@server5 ~]#eval $(docker-machine env server3)

清楚的知道当前在哪个容器中。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/289079.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号