Swarm是一組運行Docker并加入到集群中的機器。發生這種情況后,您將繼續運行您習慣的Docker命令,但現在它們將由群集管理器在群集上執行。群體中的機器可以是物理的或虛擬的。加入群體后,他們被稱為節點。
Swarm管理人員可以使用多種策略來運行容器,例如“最空節點” - 它可以使用容器填充使用率最低的機器。或者“全局”,它確保每臺機器只獲取指定容器的一個實例。您指示swarm經理在Compose文件中使用這些策略,就像您已經使用的策略一樣。
群體管理者是群體中唯一可以執行你的命令的機器,或者授權其他機器作為工作者加入群體。工人只是在那里提供能力,并沒有權力告訴任何其他機器可以做什么和不可以做什么。
到目前為止,您已經在本地機器上以單主機模式使用Docker。但是Docker也可以切換到群集模式,這就是使用群集的原因。立即啟用群模式使當前的機器成為群管理器。從此,Docker將運行您在您管理的群集上執行的命令,而不僅僅是在當前機器上執行。
sudo sh -c 'echo "deb http://download.virtualbox.org/virtualbox/debian xenial contrib" >> /etc/apt/sources.list.d/virtualbox.list'wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -sudo apt updatesudo apt install virtualbox-5.0
base=https://github.com/docker/machine/releases/download/v0.14.0 &&curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&sudo install /tmp/docker-machine /usr/local/bin/docker-machine
root@iZbp162mb58mqtz72o389nZ:~# docker-machine version
docker-machine version 0.14.0, build 89b8332
root@iZbp162mb58mqtz72o389nZ:~#
base=https://raw.githubusercontent.com/docker/machine/v0.14.0
for i in docker-machine-prompt.bash docker-machine-wrapper.bash docker-machine.bash
dosudo wget "$base/contrib/completion/bash/${i}" -P /etc/bash_completion.d
done
--2018-05-18 19:11:03-- https://raw.githubusercontent.com/docker/machine/v0.14.0/contrib/completion/bash/docker-machine.bash
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.228.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.228.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12205 (12K) [text/plain]
Saving to: '/etc/bash_completion.d/docker-machine.bash'docker-machine.bash 100%[===================>] 11.92K --.-KB/s in 0.009s 2018-05-18 19:11:04 (1.31 MB/s) - '/etc/bash_completion.d/docker-machine.bash' saved [12205/12205]root@iZbp162mb58mqtz72o389nZ:~/dockerMachine# source /etc/bash_completion.d/docker-machine-prompt.bash
root@iZbp162mb58mqtz72o389nZ:~/dockerMachine#
要啟用docker-machineshell提示符,請添加 $(__docker_machine_ps1)到您的PS1設置中~/.bashrc。
PS1='[\u@\h \W$(__docker_machine_ps1)]\$ '
卸載Docker機器:
或者,刪除您創建的機器。
要分別移除每臺機器: docker-machine rm <machine-name>
要刪除所有機器:( docker-machine rm -f $(docker-machine ls -q)您可能需要-force在Windows 上使用)。
例如,刪除機器是可選步驟,因為有些情況下您可能想要將現有機器保存并遷移到Docker for Mac或Docker for Windows環境。
刪除可執行文件: rm $(which docker-machine)
注意:作為信息點config.json,與創建的每個虛擬機相關的證書和其他數據docker-machine 存儲在~/.docker/machine/machines/Mac和Linux上以及 ~\.docker\machine\machines\Windows上。我們建議您不要直接編輯或刪除這些文件,因為這只會影響Docker CLI的信息,而不會影響實際的虛擬機,無論它們是本地還是遠程服務器。
查看一下各個需要的環境:
root@iZbp162mb58mqtz72o389nZ:~/dockerMachine# docker --version
Docker version 18.03.1-ce, build 9ee9f40
root@iZbp162mb58mqtz72o389nZ:~/dockerMachine# docker-machine --version
docker-machine version 0.14.0, build 89b8332
root@iZbp162mb58mqtz72o389nZ:~/dockerMachine# vboxmanage --version
5.0.40r115130
這本程序比較復雜。暫時不好解決問題。有解決了的請給我說下。
[root@iZbp162mb58mqtz72o389nZ ~]# docker-machine create --driver virtualbox myvm1
Running pre-create checks...
Error with pre-create check: "VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"
[root@iZbp162mb58mqtz72o389nZ ~]#
涉及到的環境變量太多了。在此就不繼續探討了,這邊有空再繼續談論吧。
主要的引用在這里:docker集群
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态