diff --git a/.gitignore b/.gitignore index 383b32564..d696aff5f 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,4 @@ docker/docker/Dockerfile docker/docker/init_gogs.sh gogs.sublime-project gogs.sublime-workspace +.tags* diff --git a/docker/s6/.s6-svscan/finish b/docker/s6/.s6-svscan/finish index 22665fa9b..3fab7f42e 100755 --- a/docker/s6/.s6-svscan/finish +++ b/docker/s6/.s6-svscan/finish @@ -1,2 +1,5 @@ #!/bin/sh -exec /bin/true + +# Cleanup SOCAT services and s6 event folder +rm -rf $(find /app/gogs/docker/s6/ -name 'event') +rm -rf /app/gogs/docker/s6/SOCAT_* diff --git a/docker/start.sh b/docker/start.sh index c824fe911..9f1f41a9a 100755 --- a/docker/start.sh +++ b/docker/start.sh @@ -1,11 +1,16 @@ #!/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_* + # 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/$NAME - echo -e "#!/bin/sh\nexec $CMD" > /app/gogs/docker/s6/$NAME/run - chmod +x /app/gogs/docker/s6/$NAME/run + 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