xieguigang 5 years ago
commit e63b6cda5c

@ -1,43 +1,43 @@
#Region "Microsoft.VisualBasic::8ea53b995fa2693902323f5b89829565, CloudKit\Docker\Commands.vb"
' Author:
'
' asuka (amethyst.asuka@gcmodeller.org)
' xie (genetics@smrucc.org)
' xieguigang (xie.guigang@live.com)
'
' Copyright (c) 2018 GPL3 Licensed
'
'
' GNU GENERAL PUBLIC LICENSE (GPL3)
'
'
' This program is free software: you can redistribute it and/or modify
' it under the terms of the GNU General Public License as published by
' the Free Software Foundation, either version 3 of the License, or
' (at your option) any later version.
'
' This program is distributed in the hope that it will be useful,
' but WITHOUT ANY WARRANTY; without even the implied warranty of
' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
' GNU General Public License for more details.
'
' You should have received a copy of the GNU General Public License
' along with this program. If not, see <http://www.gnu.org/licenses/>.
' /********************************************************************************/
' Summaries:
' Module Commands
'
' Function: CommandHistory, PS, Run, Search
'
' Sub: [Stop]
'
' /********************************************************************************/
' Author:
'
' asuka (amethyst.asuka@gcmodeller.org)
' xie (genetics@smrucc.org)
' xieguigang (xie.guigang@live.com)
'
' Copyright (c) 2018 GPL3 Licensed
'
'
' GNU GENERAL PUBLIC LICENSE (GPL3)
'
'
' This program is free software: you can redistribute it and/or modify
' it under the terms of the GNU General Public License as published by
' the Free Software Foundation, either version 3 of the License, or
' (at your option) any later version.
'
' This program is distributed in the hope that it will be useful,
' but WITHOUT ANY WARRANTY; without even the implied warranty of
' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
' GNU General Public License for more details.
'
' You should have received a copy of the GNU General Public License
' along with this program. If not, see <http://www.gnu.org/licenses/>.
' /********************************************************************************/
' Summaries:
' Module Commands
'
' Function: CommandHistory, PS, Run, Search
'
' Sub: [Stop]
'
' /********************************************************************************/
#End Region
@ -45,6 +45,7 @@ Imports System.Runtime.CompilerServices
Imports Darwinism.Docker.Arguments
Imports Darwinism.Docker.Captures
Imports Microsoft.VisualBasic.CommandLine.Reflection
Imports Microsoft.VisualBasic.Language
Imports Microsoft.VisualBasic.Scripting.MetaData
Imports SMRUCC.Rsharp.Runtime.Interop
@ -218,4 +219,24 @@ Public Module Commands
Return powershell(cli)
End Function
''' <summary>
''' delete docker images and related containers
''' </summary>
''' <returns></returns>
'''
<ExportAPI("rmImage")>
Public Function rmi(imageId As String) As Boolean
Dim stdout As Value(Of String) = ""
Dim containerId As String
Do While (stdout = CommandLine.Call("docker", $"rmi {imageId}")).Contains("image is being used by stopped container")
containerId = Strings.Split(Trim(stdout)).Last
Call CommandLine.Call("docker", $"rm {containerId}")
Call Console.WriteLine($"remove container {containerId}")
Loop
Return True
End Function
End Module

Loading…
Cancel
Save