介绍
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]
[root@server5 ~]
清楚的知道当前在哪个容器中。
|