| 
						
						
							
								
							
						
						
					 | 
					@ -207,18 +207,27 @@ XProxy 容器默认不自带 WireGuard 功能,需要额外安装 `wireguard-to | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					> 以下代码用于生成 Alpine 的 WireGuard 安装脚本,您也可以选择手动拉取 apk 安装包 | 
					 | 
					 | 
					> 以下代码用于生成 Alpine 的 WireGuard 安装脚本,您也可以选择手动拉取 apk 安装包 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					```python | 
					 | 
					 | 
					```python | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					#!/usr/bin/env python3 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					# -*- coding: utf-8 -*- | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					import os | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					import re | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					import sys | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					alpine = '3.16' | 
					 | 
					 | 
					alpine = '3.16' | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					import os, re, sys | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					if len(sys.argv) != 2: | 
					 | 
					 | 
					if len(sys.argv) != 2: | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    print('Invalid argument') | 
					 | 
					 | 
					    print('Invalid argument') | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    sys.exit(1) | 
					 | 
					 | 
					    sys.exit(1) | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					workDir = os.path.join(os.path.dirname(os.path.realpath(__file__)), sys.argv[1]) | 
					 | 
					 | 
					workDir = os.path.join(os.path.dirname(os.path.realpath(__file__)), sys.argv[1]) | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					output = os.popen(' '.join([ | 
					 | 
					 | 
					output = os.popen(' '.join([ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    'docker', 'run', '--rm', '-it', '-v', '%s:/pkg' % workDir, '-w', '/pkg', | 
					 | 
					 | 
					    'docker', 'run', '--rm', '-it', '-v', '%s:/pkg' % workDir, '-w', '/pkg', | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    'alpine:%s' % alpine, 'sh', '-c', '\'apk update && apk fetch -R %s\'' % sys.argv[1] | 
					 | 
					 | 
					    'alpine:%s' % alpine, 'sh', '-c', '\'apk update && apk fetch -R %s\'' % sys.argv[1] | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					])).read() | 
					 | 
					 | 
					])).read() | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					print("%(line)s\n%(msg)s%(line)s" % {'line': '=' * 88, 'msg': output}) | 
					 | 
					 | 
					print("%(line)s\n%(msg)s%(line)s" % {'line': '=' * 88, 'msg': output}) | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					with open(os.path.join(workDir, 'setup'), 'w') as script: | 
					 | 
					 | 
					with open(os.path.join(workDir, 'setup'), 'w') as script: | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    script.write("#!/bin/sh\ncd `dirname $0`\napk add --no-network " + ' '.join([ | 
					 | 
					 | 
					    script.write("#!/bin/sh\ncd `dirname $0`\napk add --no-network " + ' '.join([ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        s + '.apk' for s in re.findall(r'Downloading (\S+)', output) | 
					 | 
					 | 
					        s + '.apk' for s in re.findall(r'Downloading (\S+)', output) | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  |