feat: Improve Docker entrypoint and config handling
- Simplify Dockerfile ENTRYPOINT to delegate config handling to init.sh. - Enhance init.sh to automatically add `--config=/config/settings.json` if no config argument is provided.pull/5280/head
parent
b4eddf45e4
commit
0d5be86a40
|
@ -29,4 +29,4 @@ VOLUME /srv /config /database
|
|||
|
||||
EXPOSE 80
|
||||
|
||||
ENTRYPOINT [ "tini", "--", "/init.sh", "filebrowser", "--config", "/config/settings.json" ]
|
||||
ENTRYPOINT [ "tini", "--", "/init.sh" ]
|
||||
|
|
|
@ -7,4 +7,19 @@ if [ ! -f "/config/settings.json" ]; then
|
|||
cp -a /defaults/settings.json /config/settings.json
|
||||
fi
|
||||
|
||||
exec "$@"
|
||||
# Deal with the case where user does not provide a config argument
|
||||
has_config_arg=0
|
||||
for arg in "$@"; do
|
||||
case "$arg" in
|
||||
--config=*)
|
||||
has_config_arg=1
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ "$has_config_arg" -eq 0 ]; then
|
||||
set -- --config=/config/settings.json "$@"
|
||||
fi
|
||||
|
||||
exec filebrowser "$@"
|
Loading…
Reference in New Issue