1
0
Fork 0
forked from forgejo/forgejo

Docker Container: Init 1 & Initialisation

- Now using a setup script before starting the app. The separation of
the run script and the setup script will make service initialisation a
little bit clearer
- Now calling start.sh script as ENTRYPOINT and S6 as CMD. This way
when running the container with just a shell script, the start.sh
script will be launched before, making debugging easier
- Added note about `.dockerignore` ignored during Docker Hub Automated
Build
This commit is contained in:
Jean-Philippe Roemer 2015-10-02 21:54:55 +01:00
parent e5310cdbc1
commit ad5e0b833c
8 changed files with 63 additions and 37 deletions

View file

@ -1,26 +1,8 @@
#!/bin/sh
USER=git
if ! test -d /data/gogs; then
mkdir -p /data/gogs/data /data/gogs/conf /data/gogs/log /data/git
if test -f ./setup; then
source ./setup
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=${GOGS_CUSTOM}" > ~git/.ssh/environment
chmod 600 ~git/.ssh/environment
fi
cd /app/gogs
ln -sf /data/gogs/log ./log
ln -sf /data/gogs/data ./data
chown -R git:git /data /app/gogs ~git/
export USER
export USER=git
exec gosu $USER /app/gogs/gogs web

22
docker/s6/gogs/setup Executable file
View file

@ -0,0 +1,22 @@
#!/bin/sh
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=${GOGS_CUSTOM}" > ~git/.ssh/environment
chmod 600 ~git/.ssh/environment
fi
cd /app/gogs
ln -sf /data/gogs/log ./log
ln -sf /data/gogs/data ./data
chown -R git:git /data /app/gogs ~git/

View file

@ -1,15 +1,7 @@
#!/bin/sh
if ! test -d /data/ssh
then
mkdir -p /data/ssh
ssh-keygen -q -f /data/ssh/ssh_host_key -N '' -t rsa1
ssh-keygen -q -f /data/ssh/ssh_host_rsa_key -N '' -t rsa
ssh-keygen -q -f /data/ssh/ssh_host_dsa_key -N '' -t dsa
ssh-keygen -q -f /data/ssh/ssh_host_ecdsa_key -N '' -t ecdsa
ssh-keygen -q -f /data/ssh/ssh_host_ed25519_key -N '' -t ed25519
chown -R root:root /data/ssh/*
chmod 600 /data/ssh/*
if test -f ./setup; then
source ./setup
fi
exec gosu root /usr/sbin/sshd -D -f /app/gogs/docker/sshd_config

12
docker/s6/openssh/setup Executable file
View file

@ -0,0 +1,12 @@
#!/bin/sh
if ! test -d /data/ssh; then
mkdir -p /data/ssh
ssh-keygen -q -f /data/ssh/ssh_host_key -N '' -t rsa1
ssh-keygen -q -f /data/ssh/ssh_host_rsa_key -N '' -t rsa
ssh-keygen -q -f /data/ssh/ssh_host_dsa_key -N '' -t dsa
ssh-keygen -q -f /data/ssh/ssh_host_ecdsa_key -N '' -t ecdsa
ssh-keygen -q -f /data/ssh/ssh_host_ed25519_key -N '' -t ed25519
chown -R root:root /data/ssh/*
chmod 600 /data/ssh/*
fi