mirror of
https://github.com/kubenetworks/kubevpn.git
synced 2025-10-06 07:47:08 +08:00
feat: remove docker network if container length is zero
This commit is contained in:
@@ -220,14 +220,13 @@ func (r Run) Remove(ctx context.Context) error {
|
|||||||
log.Debug(err)
|
log.Debug(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for _, runConfig := range r {
|
var i types.NetworkResource
|
||||||
_, err = cli.NetworkInspect(ctx, runConfig.containerName, types.NetworkInspectOptions{})
|
i, err = cli.NetworkInspect(ctx, config.ConfigMapPodTrafficManager, types.NetworkInspectOptions{})
|
||||||
if err == nil {
|
if err != nil {
|
||||||
err = cli.NetworkRemove(ctx, runConfig.containerName)
|
return err
|
||||||
if err != nil {
|
}
|
||||||
log.Debug(err)
|
if len(i.Containers) == 0 {
|
||||||
}
|
return cli.NetworkRemove(ctx, config.ConfigMapPodTrafficManager)
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
@@ -543,7 +542,9 @@ func DoDev(devOptions Options, args []string, f cmdutil.Factory) error {
|
|||||||
if id, err = run(ctx, c, cli, dockerCli); err != nil {
|
if id, err = run(ctx, c, cli, dockerCli); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
h := interrupt.New(nil, func() {
|
h := interrupt.New(func(signal os.Signal) {
|
||||||
|
os.Exit(0)
|
||||||
|
}, func() {
|
||||||
cancel()
|
cancel()
|
||||||
_ = cli.ContainerKill(context.Background(), id, "SIGTERM")
|
_ = cli.ContainerKill(context.Background(), id, "SIGTERM")
|
||||||
_ = runLogsSinceNow(dockerCli, id)
|
_ = runLogsSinceNow(dockerCli, id)
|
||||||
@@ -551,6 +552,10 @@ func DoDev(devOptions Options, args []string, f cmdutil.Factory) error {
|
|||||||
go h.Run(func() error { select {} })
|
go h.Run(func() error { select {} })
|
||||||
defer h.Close()
|
defer h.Close()
|
||||||
if err = runLogsWaitRunning(ctx, dockerCli, id); err != nil {
|
if err = runLogsWaitRunning(ctx, dockerCli, id); err != nil {
|
||||||
|
// interrupt by signal KILL
|
||||||
|
if ctx.Err() == context.Canceled {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if err = devOptions.NetMode.Set("container:" + id); err != nil {
|
if err = devOptions.NetMode.Set("container:" + id); err != nil {
|
||||||
@@ -709,7 +714,7 @@ func createKubevpnNetwork(ctx context.Context, cli *client.Client) (string, erro
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
create, err := cli.NetworkCreate(ctx, "kubevpn", types.NetworkCreate{
|
create, err := cli.NetworkCreate(ctx, config.ConfigMapPodTrafficManager, types.NetworkCreate{
|
||||||
Driver: "bridge",
|
Driver: "bridge",
|
||||||
Scope: "local",
|
Scope: "local",
|
||||||
IPAM: &network.IPAM{
|
IPAM: &network.IPAM{
|
||||||
|
Reference in New Issue
Block a user