forgejo/docker/s6/gogs/run
Jean-Philippe Roemer e63e0b3105 New approach to Gogs Docker Container
- VOLUME for ‘/data’
- Usage of S6 as PID 1 Process
- Usage of ‘socat’ so linked container (like databases) are binded to
localhost
- OpenSSH, Socat Link and Gogs are supervised using S6
- Size of container reduced to ~75Mo
2015-10-02 10:56:36 +01:00

29 lines
609 B
Bash
Executable file

#!/bin/sh
USER=git
USERNAME=$USER
if ! test -d /data/gogs; then
mkdir -p /data/gogs/data /data/gogs/conf /data/gogs/log /data/git
fi
if ! test -d ~git/.ssh; then
mkdir ~git/.ssh
chmod 700 ~git/.ssh
fi
if ! test -f ~git/.ssh/environment; then
echo "GOGS_CUSTOM=/data/gogs" > ~git/.ssh/environment
chown git:git ~git/.ssh/environment
chown 600 ~git/.ssh/environment
fi
ln -sf /data/gogs/log /app/gogs/log
ln -sf /data/gogs/data /app/gogs/data
ln -sf /data/gogs/conf /app/gogs/conf
chown -R git:git /data /app/gogs ~git/
export USER
export USERNAME
exec gosu $USER /app/gogs/gogs web