docker learn

golang的docker,学习学习!

 

docker可以用docker build出来

 

常用docker命令:

docker pull

docker run

docker -d

 

main函数的分析:

1.  很多的flag函数,parse命令行,获取参数选择执行的程序

flVersion 获取版本

bridge   猜测可能是桥接

flDebug debug开关

flDaemon 开启后台进程,这个是很多命令的前提

其他命令

 

2. deamon的过程

a. os.Geteuid() &runtime.GOOS必须是root & linux

b. flag.NArg()不能有多余参数

c. 设置TMPDIR 环境变量

d. 设置root目录 root := *flRoot;realRoot=root
e. 启动一个engine并注册builtins.Register(eng)

f.  设置eng的参数

g. 启动run 一个server的job

h. 启动run一个serveapi的job

 

3. client端

a. 获取addr,strings.SplitN(flHosts.GetAll()[0],"://",2)

b.tlsConfig做配置

c.client.NewDockerCli创建一个clistruct

cli=client.NewDockerCli(os.Stdin,os.Stdout,os.Stderr,protoAddrParts[0],protoAddrParts[1],&tlsConfig)

d.对命令行参数做parse做转义,最后一步,开始执行

cli.ParseCommands(flag.Args()...) //这里的...将切片打散

 

 

 

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值