2021-04-27 03:55:42 +00:00
|
|
|
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
|
2021-04-28 04:12:24 +00:00
|
|
|
if [ -z $JVM_XMX ]; then
|
|
|
|
echo "*** Defaulting to 512MB JVM heap limit"
|
|
|
|
echo "*** You can override that value with the JVM_XMX variable"
|
|
|
|
echo "*** (for example JVM_XMX=256m)"
|
|
|
|
JVM_XMX=512m
|
|
|
|
fi
|
|
|
|
|
2021-04-27 03:55:42 +00:00
|
|
|
# Explicitly define HOME otherwise it might not have been set
|
|
|
|
export HOME=/i2p
|
|
|
|
|
|
|
|
export I2P=${HOME}/i2p
|
|
|
|
|
|
|
|
echo "Starting I2P"
|
|
|
|
|
|
|
|
cd $HOME
|
|
|
|
export CLASSPATH=.
|
|
|
|
|
|
|
|
for jar in `ls lib/*.jar`; do
|
|
|
|
CLASSPATH=${CLASSPATH}:${jar}
|
|
|
|
done
|
|
|
|
|
2022-06-10 13:39:27 -04:00
|
|
|
if [ -f /.dockerenv ]; then
|
|
|
|
echo "[startapp] Running in container"
|
2022-11-14 18:55:21 +00:00
|
|
|
if [ -z "$IP_ADDR" ]; then
|
|
|
|
export IP_ADDR=$(hostname -i)
|
2022-06-10 13:39:27 -04:00
|
|
|
echo "[startapp] Running in docker network"
|
|
|
|
fi
|
2022-11-14 18:55:21 +00:00
|
|
|
echo "[startapp] setting reachable IP to container IP $IP_ADDR"
|
|
|
|
find . -name '*.config' -exec sed -i "s/127.0.0.1/$IP_ADDR/g" {} \;
|
|
|
|
find . -name '*.config' -exec sed -i "s/localhost/$IP_ADDR/g" {} \;
|
2022-06-10 13:39:27 -04:00
|
|
|
fi
|
|
|
|
|
2022-07-17 15:34:25 -04:00
|
|
|
# Options required for reflective access in dynamic JVM languages like Groovy and Jython
|
|
|
|
JAVA17OPTS="--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/sun.nio.fs=ALL-UNNAMED --add-opens java.base/java.nio=ALL-UNNAMED --add-opens java.base/java.util.Properties=ALL-UNNAMED --add-opens java.base/java.util.Properties.defaults=ALL-UNNAMED"
|
|
|
|
# Old java options
|
2021-04-28 04:12:24 +00:00
|
|
|
JAVAOPTS="-Djava.net.preferIPv4Stack=false -Djava.library.path=${I2P}:${I2P}/lib -Di2p.dir.base=${I2P} -Di2p.dir.config=${HOME}/.i2p -DloggerFilenameOverride=logs/log-router-@.txt -Xmx$JVM_XMX"
|
2021-04-27 03:55:42 +00:00
|
|
|
|
|
|
|
java -cp "${CLASSPATH}" ${JAVA_OPTS} net.i2p.router.RouterLaunch
|