Index page and post pages ready
This commit is contained in:
60
vendor/github.com/a-h/gemini/serve-gemini.sh
generated
vendored
Normal file
60
vendor/github.com/a-h/gemini/serve-gemini.sh
generated
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
#!/usr/bin/env sh
|
||||
pid=0
|
||||
|
||||
# Respond to ctrl-c as per https://medium.com/@gchudnov/trapping-signals-in-docker-containers-7a57fdda7d86
|
||||
|
||||
# SIGTERM-handler
|
||||
term_handler() {
|
||||
if [ $pid -ne 0 ]; then
|
||||
kill -SIGTERM "$pid"
|
||||
wait "$pid"
|
||||
fi
|
||||
exit 143; # 128 + 15 -- SIGTERM
|
||||
}
|
||||
|
||||
# setup handlers
|
||||
# on callback, kill the last background process, which is `tail -f /dev/null` and execute the specified handler
|
||||
trap 'kill ${!}; term_handler' SIGTERM
|
||||
|
||||
# Configure defaults.
|
||||
if [ "$PORT" = "" ];
|
||||
then
|
||||
export PORT=1965;
|
||||
fi
|
||||
if [ "$DOMAIN" = "" ];
|
||||
then
|
||||
export DOMAIN=localhost;
|
||||
fi
|
||||
if [ ! -d /certs ];
|
||||
then
|
||||
echo "Docker usage:"
|
||||
echo ""
|
||||
echo "Create server certificates with the domain set as the common name (all other fields can be left default):"
|
||||
echo " openssl ecparam -genkey -name secp384r1 -out server.key"
|
||||
echo " openssl req -new -x509 -sha256 -key server.key -out server.crt -days 3650"
|
||||
echo ""
|
||||
echo "Then run Docker container:"
|
||||
echo ""
|
||||
echo " docker run -v /path_to_your_cert_files:/certs -e PORT=1965 -e DOMAIN=localhost -v /path_to_your_content:/content -p 1965:1965 adrianhesketh/gemini:latest"
|
||||
echo ""
|
||||
return
|
||||
fi
|
||||
if [ ! -e /certs/server.crt ];
|
||||
then
|
||||
echo "server.crt file not found, are your certs named correctly?"
|
||||
fi
|
||||
if [ ! -e /certs/server.key ];
|
||||
then
|
||||
echo "server.key file not found, are your certs named correctly?"
|
||||
fi
|
||||
|
||||
# run application
|
||||
# Run server.
|
||||
./gemini serve --path=/content --certFile=/certs/server.crt --keyFile=/certs/server.key --port=$PORT --domain=$DOMAIN &
|
||||
pid="$!"
|
||||
|
||||
# wait forever
|
||||
while true
|
||||
do
|
||||
tail -f /dev/null & wait ${!}
|
||||
done
|
||||
Reference in New Issue
Block a user