Enhancement: use apt only when needed docker-entrypoint.sh
Use apt-get only if we really need to install a package: stop running unnecessary apt-get update every time we start the container.
This commit is contained in:
parent
4146b140d3
commit
9c4ca85a1e
@ -122,27 +122,37 @@ install_languages() {
|
|||||||
if [ ${#langs[@]} -eq 0 ]; then
|
if [ ${#langs[@]} -eq 0 ]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
apt-get update
|
|
||||||
|
|
||||||
|
# Build list of packages to install
|
||||||
for lang in "${langs[@]}"; do
|
for lang in "${langs[@]}"; do
|
||||||
pkg="tesseract-ocr-$lang"
|
pkg="tesseract-ocr-$lang"
|
||||||
|
|
||||||
if dpkg --status "$pkg" &>/dev/null; then
|
if dpkg --status "$pkg" &>/dev/null; then
|
||||||
echo "Package $pkg already installed!"
|
echo "Package $pkg already installed!"
|
||||||
continue
|
continue
|
||||||
fi
|
else
|
||||||
|
to_install+=($pkg)
|
||||||
if ! apt-cache show "$pkg" &>/dev/null; then
|
|
||||||
echo "Package $pkg not found! :("
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Installing package $pkg..."
|
|
||||||
if ! apt-get --assume-yes install "$pkg" &>/dev/null; then
|
|
||||||
echo "Could not install $pkg"
|
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Use apt only when we install packages
|
||||||
|
if [ ${#to_install[@]} > 0 ]; then
|
||||||
|
apt-get update
|
||||||
|
|
||||||
|
for pkg in "${to_install[@]}"; do
|
||||||
|
|
||||||
|
if ! apt-cache show "$pkg" &>/dev/null; then
|
||||||
|
echo "Skipped $pkg: Package not found! :("
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Installing package $pkg..."
|
||||||
|
if ! apt-get --assume-yes install "$pkg" &>/dev/null; then
|
||||||
|
echo "Could not install $pkg"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "Paperless-ngx docker container starting..."
|
echo "Paperless-ngx docker container starting..."
|
||||||
|
Loading…
x
Reference in New Issue
Block a user