作者:lnssm | 来源:互联网 | 2023-10-12 16:36
小技巧:1、掌握标记、复制、粘贴方法2、组合多行操作命令3、使用变量和循环语句4、使用别名alias#1、掌握标记、复制、粘贴方法#先在shell控制台中,点击窗口左上角-编辑-标记,#然后
小技巧:
1、掌握标记、复制、粘贴方法
2、组合多行操作命令
3、使用变量和循环语句
4、使用别名 alias
# 1、掌握标记、复制、粘贴方法
# 先在shell控制台中,点击窗口左上角-编辑-标记,
# 然后使用鼠标对屏幕信息进行标记,
# 标记好以后,按回车键,完成复制。
# 在记事本、Word中粘贴,即可将控制台中的信息复制到记事本或文档中。
# 反之,也可以将几条、几百条 docker Toolbox 的命令复制,
# 粘贴到shell中运行,批量处理Docker Toolbox shell命令。
# 比如通过粘贴,无需人工干预,自动执行,
# 直接创建一个Swarm集群+Portainer图形化管理的测试环境。
# 也可以自动创建多台Docker虚拟机、自动删除不用的Docker虚拟机等。
图一 终端控制台上的标记、复制、粘贴
# 2、组合多行操作命令
# 例:启动Docker Toolbox后,先要创建5台Docker虚拟机,用于测试,
# 然后切换到Node1机器,显示Docker版本,下载一个httpd,进行httpd容器...
# 最后显示所有虚拟机的状态,命令集如下:
docker-machine create \
--driver virtualbox \
--engine-registry-mirror=https://registry.docker-cn.com \
Node1
docker-machine create \
--driver virtualbox \
--engine-registry-mirror=https://registry.docker-cn.com \
Node2
docker-machine create \
--driver virtualbox \
--engine-registry-mirror=https://registry.docker-cn.com \
Node3
docker-machine create \
--driver virtualbox \
--engine-registry-mirror=https://registry.docker-cn.com \
Node4
docker-machine create \
--driver virtualbox \
--engine-registry-mirror=https://registry.docker-cn.com \
Node5
eval $(docker-machine env node1)
docker info
Docker pull httpd
Docker run -d -it --name www -p 80:80 httpd
Docker-machine ls
# 我们可以把上述命令组合在一起,
# 直接复制到控制台中执行,无需手工一行一行的输入,
# 如果结合shell编程的知识,学会字符串、变量赋值、循环语句等操作,
# 通过编写小程序的方式,实现自动化管理,可以获得更大的自由度。
# 3、使用变量和循环语句
# 以上面的代码段为例,我们可以使用变量和循环语句,
# 将上面的代码改造,实现相同的功能
# 一样可以复制到Docker Toolbox shell控制台中运行
# 其中机器名Node都是相同的,只是后面的编号不同,
# 同样的创建Docker虚拟机的命令执行了5次
# 因此代码可以改为如下语句:
for i in $(seq 1 5)
do
docker-machine create \
--driver virtualbox \
--engine-registry-mirror=https://registry.docker-cn.com \
Node$i
done
eval $(docker-machine env node1)
docker info
docker pull httpd
docker run -d -it --name www -p 80:80 httpd
docker-machine ls
# 通过循环语句的使用,执行了相同的功能,命令代码更简洁。
# 4 使用别名 alias dm=docker-machine
# 在需要输入docker-machine 的地方,直接使用两个字母的 dm 来替代,每次少输入12个字符,
# 比如 docker-machine ls / docker-machine config /docker-machine ip default/docker-machine env default 等
# 可用 dm ls/ dm config /dm ip default /dm env default 替代。
alias dm=docker-machine
dm ls
dm config
dm ip default
dm env default
# 建议将docker-machine 命令打熟练了、打顺手了,再采用别名 dm 代替 docker-machine