diff options
author | 无闻 <u@gogs.io> | 2015-10-10 16:28:59 -0400 |
---|---|---|
committer | 无闻 <u@gogs.io> | 2015-10-10 16:28:59 -0400 |
commit | 5676fa5b5d818867a26aeddfbc48f593fab957df (patch) | |
tree | a96f88a75b88a9100ae062c2be9335457adcb1ec | |
parent | d7f390a3b089860fd91c917ebcb1ed7d4e715d21 (diff) | |
parent | fc427432ed31029352ccf01491223c803bc22b6f (diff) | |
download | gitea-5676fa5b5d818867a26aeddfbc48f593fab957df.tar.gz gitea-5676fa5b5d818867a26aeddfbc48f593fab957df.zip |
Merge pull request #1758 from 0rax/develop
Docker Container Restart Fix
-rw-r--r-- | .gitignore | 1 | ||||
-rwxr-xr-x | docker/s6/.s6-svscan/finish | 5 | ||||
-rwxr-xr-x | docker/start.sh | 11 |
3 files changed, 13 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore index 383b32564c..d696aff5f4 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 22665fa9bb..3fab7f42e5 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 c824fe911c..9f1f41a9a4 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 |