- Volumed subfolder now created up in the ENTRYPOINT script, this way they are created before S6 even starts making VOLUME. - The subfolder will be created during VOLUME creation too as ENTRYPOINT script will be run before /bin/true - SSH Keys will now be created on a single key basis not replying on the existence of /data/ssh folder
		
			
				
	
	
		
			29 lines
		
	
	
		
			888 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			888 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | ||
| 
 | ||
| # Cleanup SOCAT services and s6 event folder
 | ||
| # On start and on shutdown in case container has been killed
 | ||
| rm -rf $(find /app/gogs/docker/s6/ -name 'event')
 | ||
| rm -rf /app/gogs/docker/s6/SOCAT_*
 | ||
| 
 | ||
| # Create VOLUME subfolder
 | ||
| for f in /data/gogs/data /data/gogs/conf /data/gogs/log /data/git /data/ssh; do
 | ||
|     if ! test -d $f; then
 | ||
|         mkdir -p $f
 | ||
|     fi
 | ||
| done
 | ||
| 
 | ||
| # Bind linked docker container to localhost socket using socat
 | ||
| env | sed -En 's|(.*)_PORT_([0-9]*)_TCP=tcp://(.*):(.*)|\1_\2 socat -ls TCP4-LISTEN:\2,fork,reuseaddr TCP4:\3:\4|p' | \
 | ||
| while read NAME CMD; do
 | ||
|     mkdir -p /app/gogs/docker/s6/SOCAT_$NAME
 | ||
|     echo -e "#!/bin/sh\nexec $CMD" > /app/gogs/docker/s6/SOCAT_$NAME/run
 | ||
|     chmod +x /app/gogs/docker/s6/SOCAT_$NAME/run
 | ||
| done
 | ||
| 
 | ||
| # Exec CMD or S6 by default if nothing present
 | ||
| if [ $# -gt 0 ];then
 | ||
|     exec "$@"
 | ||
| else
 | ||
|     exec /usr/bin/s6-svscan /app/gogs/docker/s6/
 | ||
| fi
 |