mirror of
				https://github.com/NginxProxyManager/nginx-proxy-manager.git
				synced 2025-10-31 07:43:33 +00:00 
			
		
		
		
	The DISABLE_IPV6 flag did not turn off ipv6 DNS requests performed by nginx. This commit changes it and makes nginx-proxy-manager more compatible with podman.
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/with-contenv bash
 | |
| 
 | |
| # Create required folders
 | |
| mkdir -p /tmp/nginx/body \
 | |
| 	/run/nginx \
 | |
| 	/var/log/nginx \
 | |
| 	/data/nginx \
 | |
| 	/data/custom_ssl \
 | |
| 	/data/logs \
 | |
| 	/data/access \
 | |
| 	/data/nginx/default_host \
 | |
| 	/data/nginx/default_www \
 | |
| 	/data/nginx/proxy_host \
 | |
| 	/data/nginx/redirection_host \
 | |
| 	/data/nginx/stream \
 | |
| 	/data/nginx/dead_host \
 | |
| 	/data/nginx/temp \
 | |
| 	/var/lib/nginx/cache/public \
 | |
| 	/var/lib/nginx/cache/private \
 | |
| 	/var/cache/nginx/proxy_temp
 | |
| 
 | |
| touch /var/log/nginx/error.log && chmod 777 /var/log/nginx/error.log && chmod -R 777 /var/cache/nginx
 | |
| chown root /tmp/nginx
 | |
| 
 | |
| # Dynamically generate resolvers file, if resolver is IPv6, enclose in `[]`
 | |
| # thanks @tfmm
 | |
| if [ "$DISABLE_IPV6" == "true" ] || [ "$DISABLE_IPV6" == "on" ] || [ "$DISABLE_IPV6" == "1" ] || [ "$DISABLE_IPV6" == "yes" ];
 | |
| then
 | |
|   echo resolver "$(awk 'BEGIN{ORS=" "} $1=="nameserver" { sub(/%.*$/,"",$2); print ($2 ~ ":")? "["$2"]": $2}' /etc/resolv.conf) ipv6=off valid=10s;" > /etc/nginx/conf.d/include/resolvers.conf
 | |
| else
 | |
|   echo resolver "$(awk 'BEGIN{ORS=" "} $1=="nameserver" { sub(/%.*$/,"",$2); print ($2 ~ ":")? "["$2"]": $2}' /etc/resolv.conf) valid=10s;" > /etc/nginx/conf.d/include/resolvers.conf
 | |
| fi
 | |
| # Generate dummy self-signed certificate.
 | |
| if [ ! -f /data/nginx/dummycert.pem ] || [ ! -f /data/nginx/dummykey.pem ]
 | |
| then
 | |
| 	echo "Generating dummy SSL certificate..."
 | |
| 	openssl req \
 | |
| 		-new \
 | |
| 		-newkey rsa:2048 \
 | |
| 		-days 3650 \
 | |
| 		-nodes \
 | |
| 		-x509 \
 | |
| 		-subj '/O=localhost/OU=localhost/CN=localhost' \
 | |
| 		-keyout /data/nginx/dummykey.pem \
 | |
| 		-out /data/nginx/dummycert.pem
 | |
| 	echo "Complete"
 | |
| fi
 | |
| 
 | |
| # Handle IPV6 settings
 | |
| /bin/handle-ipv6-setting /etc/nginx/conf.d
 | |
| /bin/handle-ipv6-setting /data/nginx
 | |
| 
 | |
| exec nginx
 |