dever 5 年之前
父节点
当前提交
cb616cdab9
共有 3 个文件被更改,包括 23 次插入13 次删除
  1. 1 1
      src/docker/build/os/alpine/Dockerfile
  2. 2 0
      src/docker/core.conf
  3. 20 12
      src/tool/docker.py

+ 1 - 1
src/docker/build/os/alpine/Dockerfile

@@ -6,7 +6,7 @@ ENV CHINA_MIRRORS=http://mirrors.ustc.edu.cn/
 ENV FAU_MIRRORS=http://ftp.fau.de/
 ENV MIRRORS=$CHINA_MIRRORS
 
-RUN sed -i "s/http:\/\/dl-cdn.alpinelinux.org/http:\/\/mirrors.ustc.edu.cn/g" /etc/apk/repositories && apk --no-cache --update add tzdata && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && date && apk del tzdata && mkdir /entrypoint && mkdir /share && apk add bash
+RUN sed -i "s/http:\/\/dl-cdn.alpinelinux.org/http:\/\/mirrors.ustc.edu.cn/g" /etc/apk/repositories && apk --no-cache --update add tzdata && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && date && apk del tzdata && mkdir /entrypoint && mkdir /share
 
 VOLUME ["/share"]
 

+ 2 - 0
src/docker/core.conf

@@ -3,6 +3,8 @@
 private				= docker.dever.cc
 hub					= docker.io/shemic
 aliyun				= registry.cn-hangzhou.aliyuncs.com/shemic
+pi                  = registry.cn-hangzhou.aliyuncs.com/shemic_pi
+
 
 [images]
 ;os

+ 20 - 12
src/tool/docker.py

@@ -215,9 +215,10 @@ class Docker(object):
 class Docker_Action(object):
 	@staticmethod
 	def build():
+		path = Args.name
 		if Args.name and Args.name in Docker.core['images']:
-			Args.name = Docker.core['images'][Args.name]
-		Image.build(Docker.storeHost, Args.name)
+			path = Docker.core['images'][Args.name]
+		Image.build(Docker.storeHost, path, Args.name)
 		Container.delete()
 		Image.delete()
 		print 'docker build '+Args.name+':yes'
@@ -227,12 +228,14 @@ class Docker_Action(object):
 		package = self.package()
 		if Args.name != '':
 			if Args.name in package:
+				#print package[Args.name]
 				Image.push(package[Args.name])
 			else:
 				print 'error ' + Args.name
 			sys.exit()
 
 		for key in package:
+			#print(package[key])
 			Image.push(package[key])
 
 	@classmethod
@@ -268,13 +271,15 @@ class Docker_Action(object):
 				index = Docker.storeHost + key
 			result[key] = []
 			result[key].append(index)
-			for k,v in stores.items():
-				if k == 'private': 
-					host = v + '/' + value
-				else:
-					host = v + '/' + key
-				if host != index:
-					result[key].append(host)
+			
+			if Docker.store != 'pi':
+				for k,v in stores.items():
+					if k == 'private': 
+						host = v + '/' + value
+					else:
+						host = v + '/' + key
+					if host != index:
+						result[key].append(host)
 		if Args.name and Args.name in result:
 			value = Args.name + ' [' + ",".join(result[Args.name ]) + ']'
 			print value
@@ -549,9 +554,12 @@ class Image(object):
 	def delete():
 		Core.shell('image.rm', bg=True)
 	@staticmethod
-	def build(path, name):
-		file = Core.path + Docker.path + 'build/' + name + '/'
-		name = path + name
+	def build(root, path, name):
+		file = Core.path + Docker.path + 'build/' + path + '/'
+		if Docker.store == 'private':
+			name = root + path
+		else:
+			name = root + name
 		Core.shell('image.build ' + name + ' ' + file, True)
 	@staticmethod
 	def check(name):