mirror of
				https://github.com/NginxProxyManager/nginx-proxy-manager.git
				synced 2025-11-04 01:15:14 +00:00 
			
		
		
		
	- Added ipv6 listening to hosts when configured, fixes #236 and #149 - Added documentation about disabling ipv6 - Updated npm packages
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						||
 | 
						||
# This command reads the `DISABLE_IPV6` env var and will either enable
 | 
						||
# or disable ipv6 in all nginx configs based on this setting.
 | 
						||
 | 
						||
# Lowercase
 | 
						||
DISABLE_IPV6=$(echo "${DISABLE_IPV6:-}" | tr '[:upper:]' '[:lower:]')
 | 
						||
 | 
						||
CYAN='\E[1;36m'
 | 
						||
BLUE='\E[1;34m'
 | 
						||
YELLOW='\E[1;33m'
 | 
						||
RED='\E[1;31m'
 | 
						||
RESET='\E[0m'
 | 
						||
 | 
						||
FOLDER=$1
 | 
						||
if [ "$FOLDER" == "" ]; then
 | 
						||
	echo -e "${RED}❯ $0 requires a absolute folder path as the first argument!${RESET}"
 | 
						||
	echo -e "${YELLOW}  ie: $0 /data/nginx${RESET}"
 | 
						||
	exit 1
 | 
						||
fi
 | 
						||
 | 
						||
FILES=$(find "$FOLDER" -type f -name "*.conf")
 | 
						||
if [ "$DISABLE_IPV6" == "true" ] || [ "$DISABLE_IPV6" == "on" ] || [ "$DISABLE_IPV6" == "1" ] || [ "$DISABLE_IPV6" == "yes" ]; then
 | 
						||
	# IPV6 is disabled
 | 
						||
	echo "Disabling IPV6 in hosts"
 | 
						||
	echo -e "${BLUE}❯ ${CYAN}Disabling IPV6 in hosts: ${YELLOW}${FOLDER}${RESET}"
 | 
						||
 | 
						||
	# Iterate over configs and run the regex
 | 
						||
	for FILE in $FILES
 | 
						||
	do
 | 
						||
		echo -e "  ${BLUE}❯ ${YELLOW}${FILE}${RESET}"
 | 
						||
		sed -E -i 's/^([^#]*)listen \[::\]/\1#listen [::]/g' "$FILE"
 | 
						||
	done
 | 
						||
 | 
						||
else
 | 
						||
	# IPV6 is enabled
 | 
						||
	echo -e "${BLUE}❯ ${CYAN}Enabling IPV6 in hosts: ${YELLOW}${FOLDER}${RESET}"
 | 
						||
 | 
						||
	# Iterate over configs and run the regex
 | 
						||
	for FILE in $FILES
 | 
						||
	do
 | 
						||
		echo -e "  ${BLUE}❯ ${YELLOW}${FILE}${RESET}"
 | 
						||
		sed -E -i 's/^(\s*)#listen \[::\]/\1listen [::]/g' "$FILE"
 | 
						||
	done
 | 
						||
 | 
						||
fi
 |