rabin 1 year ago
parent
commit
4ad82524a4

+ 1 - 1
install.bat

@@ -1,5 +1,5 @@
 @echo off
-pip install docker
+rem pip install docker
 set basepath=%~dp0
 setx /M DEVERPATH "%basepath%src/"
 setx /M PATH "%PATH%;%DEVERPATH%"

+ 20 - 3
src/core.py

@@ -194,6 +194,8 @@ class Config(object):
 class Alias(object):
 	@classmethod
 	def delete(self, config, name, cluster=False):
+		if Core.platform() == False:
+			return
 		result = self.get(config, name)
 		for key in result:
 			action = self.action(name, key)
@@ -210,6 +212,8 @@ class Alias(object):
 			#Core.popen('rm -rf ' + action[2], bg=True)
 	@classmethod
 	def add(self, config, name, content, type, cluster=False):
+		if Core.platform() == False:
+			return
 		result = self.get(config, name)
 		for key in result:
 			action = self.action(name, key)
@@ -243,6 +247,8 @@ class Alias(object):
 
 	@staticmethod
 	def define(name, cluster=False):
+		if Core.platform() == False:
+			return
 		conf = ['logs', 'inspect', 'restart', 'stop', 'rm', 'rmb', 'run', 'uprun', 'show']
 		result = ''
 		for key in conf:
@@ -257,6 +263,8 @@ class Alias(object):
 		return result
 	@classmethod
 	def get(self, config, name):
+		if Core.platform() == False:
+			return
 		self.path = Core.path + 'data/alias/'
 		result = []
 		default = 'sh->' + name
@@ -271,6 +279,8 @@ class Alias(object):
 		return result
 	@classmethod
 	def action(self, name, key):
+		if Core.platform() == False:
+			return
 		file = key
 		if '->' in key:
 			temp = key.split('->')
@@ -427,7 +437,6 @@ class Core(object):
 	@classmethod
 	def shell(self, command, sub=False, bg=False):
 		shell = self.path + 'src/shell/' + command.replace('.', '/', 1)
-		print(command)
 		return self.popen(shell, sub, bg)
 	@staticmethod
 	def popen(command, sub=False, bg=False):
@@ -435,9 +444,17 @@ class Core(object):
 		if Core.platform() == False:
 			if 'chmod' in command or 'ln -' in command:
 				return False
+			'''
 			if 'shell' in command:
 				temp = command.split(' ')
-				command = temp[0] + '.bat ' + temp[1]
+				n = len(temp)
+				if n == 3:
+					command = temp[0] + '.bat ' + temp[1] + ' ' + temp[2]
+				if n == 2:
+					command = temp[0] + '.bat ' + temp[1]
+				else:
+					command = temp[0] + '.bat '
+			'''
 			if 'grep' in command and '| wc -l' in command:
 				command = command.replace('grep', 'find /C')
 				command = command.replace('| wc -l', '')
@@ -447,7 +464,7 @@ class Core(object):
 			command = command + ' 1>/dev/null 2>&1 &'
 		if sub == False:
 			process = os.popen(command)
-			output = process.read()
+			output = process.buffer.read().decode('utf-8')
 			process.close()
 			return output
 		else:

+ 1 - 1
src/docker/build/db/mysql/Dockerfile

@@ -1,3 +1,3 @@
-FROM mysql:5.7
+FROM mysql:latest
 
 MAINTAINER Rabin "https://github.com/shemic"

+ 5 - 1
src/shell/container/drop

@@ -1,4 +1,8 @@
 #!/usr/bin/env sh
 set -e
 
-docker ps -a|awk '{print $1}'|xargs docker rm -f 
+#docker ps -a|awk '{print $1}'|xargs docker rm -f 
+result=`docker ps -a|grep Exited|awk '{print $1}'`
+if [ -n "$result" ];then
+	docker ps -a|grep Exited|awk '{print $1}'|xargs docker rm -f
+fi

+ 1 - 1
src/shell/container/drop.bat

@@ -1,3 +1,3 @@
 @echo off
 
-docker ps -a|awk '{print %1}'|xargs docker rm -f 
+for /f "skip=1 tokens=1,* delims= " %%i in ('docker ps -a') do (echo "%%j" | findstr "Exited" > nul && (docker rm -f "%%i") || (echo "no"))

+ 6 - 3
src/shell/container/rm.bat

@@ -1,5 +1,8 @@
 @echo off
-set -e
 
-docker stop %1
-docker rm -f %1
+if {%1} == {} (
+	for /f "skip=1 tokens=1,* delims= " %%i in ('docker ps -a') do (echo "%%j" | findstr "Exited" > nul && (docker rm -f "%%i") || (echo "no"))
+) else (
+	docker stop %1
+	docker rm -f %1
+)

+ 1 - 1
src/shell/container/show.bat

@@ -1,6 +1,6 @@
 @echo off
 
-if  "%1" == "" (
+if {%1} == {} (
 	docker ps -a
 ) else (
 	docker ps -a | findstr "%1"

+ 3 - 0
src/shell/docker/tag.bat

@@ -0,0 +1,3 @@
+@echo off
+
+docker tag %1 %2

+ 3 - 4
src/shell/image/build.bat

@@ -1,5 +1,4 @@
-#!/usr/bin/env sh
-set -e
+@echo off
 
-docker build --no-cache -t $1 $2
-docker images $1
+docker build --no-cache -t %1 %2
+docker images %1

+ 1 - 5
src/shell/image/drop

@@ -1,8 +1,4 @@
 #!/usr/bin/env sh
 set -e
 
-if [ -n "$1" ];then
-	docker images|grep $1|awk '{print $1}'|xargs docker rmi -f
-else
-	docker images|awk '{print $3}'|xargs docker rmi -f
-fi
+docker images|grep none|awk '{print $3}'|xargs docker rmi -f 

+ 2 - 7
src/shell/image/drop.bat

@@ -1,8 +1,3 @@
-#!/usr/bin/env sh
-set -e
+@echo off
 
-if [ -n "$1" ];then
-	docker images|grep $1|awk '{print $1}'|xargs docker rmi -f
-else
-	docker images|awk '{print $3}'|xargs docker rmi -f
-fi
+for /f "skip=1 tokens=2,3 delims= " %%i in ('docker images') do (echo "%%i" | findstr "none" > nul && (docker rmi -f "%%i") || (echo "no"))

+ 1 - 2
src/shell/image/pull.bat

@@ -1,4 +1,3 @@
-#!/usr/bin/env sh
-set -e
+@echo off
 
 docker pull $1

+ 8 - 9
src/shell/image/push.bat

@@ -1,10 +1,9 @@
-#!/usr/bin/env sh
-set -e
+@echo off
 
-if [ -n "$2" ];then
-	docker tag $1 $2
-	docker push $2
-	docker rmi -f $2
-else
-	docker push $1
-fi
+if {%2} == {} (
+	docker push %1
+) else (
+	docker tag %1 %2
+	docker push %2
+	docker rmi -f %2
+)

+ 5 - 1
src/shell/image/rm

@@ -1,4 +1,8 @@
 #!/usr/bin/env sh
 set -e
 
-docker images|grep none|awk '{print $3}'|xargs docker rmi -f 
+if [ -n "$1" ];then
+	docker images|grep $1|awk '{print $1}'|xargs docker rmi -f
+else
+	docker images|awk '{print $3}'|xargs docker rmi -f
+fi

+ 6 - 3
src/shell/image/rm.bat

@@ -1,4 +1,7 @@
-#!/usr/bin/env sh
-set -e
+@echo off
 
-docker images|grep none|awk '{print $3}'|xargs docker rmi -f 
+if {%1} == {} (
+	for /f "skip=1 tokens=2,3 delims= " %%i in ('docker images') do (echo "%%i" | findstr "none" > nul && (docker rmi -f "%%i") || (echo "no"))
+) else (
+	for /f "skip=1 tokens=1,3 delims= " %%i in ('docker images') do (echo "%%i" | findstr "%1" > nul && (docker rmi -f "%%j") || (echo "no"))
+)

+ 1 - 2
src/shell/image/show.bat

@@ -1,4 +1,3 @@
-#!/usr/bin/env sh
-set -e
+@echo off
 
 docker images

+ 2 - 2
src/tool/docker.py

@@ -297,7 +297,7 @@ class Docker_Action(object):
 
 	@staticmethod
 	def rmi():
-		Image.delete()
+		Image.delete(Args.name)
 		print('rm image:yes')
 
 	@staticmethod
@@ -307,7 +307,7 @@ class Docker_Action(object):
 
 	@staticmethod
 	def dropi():
-		Image.drop(Args.name)
+		Image.drop()
 		print('drop image:yes')
 
 	@staticmethod