Description
Steps To Reproduce
- Fresh .vma install (for Proxmox)
- Boot up
- Continue with startup install script
- Try to install Full Text Search
Expected Result
Running docker image for ElasticSearch, and continuing with startup script.
Actual Result
Docker image fails to run with error ✘ elasticsearch Error manifest for docker.elastic.co/elasticsearch/elasticsearch:1.53.5 not found: manifest unknown: manifest unknown
which leads to endless loop of "Waiting for ElasticSearch to come online, please don't abort..." and a complete inability to finish the startup script.
Screenshots, Videos, or Pastebins
No response
Additional Context
Digging through the install scripts to find the script fulltextsearch_install
in /var/scripts/lib.sh
seemed to be the problem. Running it straight from the command line, it prints 1.53.5 (there is no image for 1.53.5).
This is the full script:
# Full text Search
fulltextsearch_install() {
FULLTEXTSEARCH_DIR="$SCRIPTS"/fulltextsearch
NEXTCLOUD_INDEX=$(gen_passwd "$SHUF" '[:lower:]')
ELASTIC_USER_PASSWORD=$(gen_passwd "$SHUF" '[:lower:]')
FULLTEXTSEARCH_IMAGE_NAME=fulltextsearch_es01
FULLTEXTSEARCH_SERVICE=nextcloud-fulltext-elasticsearch-worker.service
# Supports 0-9.0-99.0-9. Max supprted version with this function is 9.99.9. When ES 10.0.0 is out we have a problem.
# Maybe "10\\.[[:digit:]][[:digit:]]\\.[[:digit:]]" will work?
FULLTEXTSEARCH_IMAGE_NAME_LATEST_TAG="$(curl -s -m 900 https://www.docker.elastic.co/r/elasticsearch?limit=500 | grep -Eo "[[:digit:]]\\.[[:digit:]][[:digit:]]\\.[[:digit:]]" | sort --version-sort | tail -1)"
printf "Debug: FULLTEXTSEARCH_IMAGE_NAME_LATEST_TAG=%s\n" "$FULLTEXTSEARCH_IMAGE_NAME_LATEST_TAG"
# Legacy, changed 2023-09-21
DOCKER_IMAGE_NAME=es01
# Legacy, not used at all
RORDIR=/opt/es/
OPNSDIR=/opt/opensearch
nc_fts="ark74/nc_fts"
opens_fts="opensearchproject/opensearch"
fts_node="fts_os-node"
}
This is appears to be an outdated script when compared with https://raw.githubusercontent.com/nextcloud/vm/main/lib.sh that DOES work (I found that URL referenced in /var/scripts/fetch_lib.sh
github file):
FULLTEXTSEARCH_IMAGE_NAME_LATEST_TAG="$(curl -s -m 900 https://raw.githubusercontent.com/docker-library/official-images/refs/heads/master/library/elasticsearch | grep "Tags:" | head -1 | awk '{print $2}')"
followed by echo $FULLTEXTSEARCH_IMAGE_NAME_LATEST_TAG
called by the new fulltextsearch_install
prints 8.16.5
=========================================
I am not the greatest at understanding bash scripts, so does the Proxmox .vma file just ship with an old version of that script and fetch_lib.sh doesn't update it because it's already there? Or why does it come with a broken script that gets infinitely stuck waiting for a nonexistent version of the docker image to launch if you choose to install Full Text Search?
I am new at both Nextcloud and working with github issues, forgive me if I left something out.
My temporary solution was to ssh into the VM, nano /var/scripts/fulltextsearch/docker-compose.yaml
(which is created by this file and replace the $FULLTEXTSEARCH_IMAGE_LATEST_TAG
with 8.16.5 then run docker compose up -d
that finally pulls an actual existing image version, which allowed the startup script to see it running and continue on.
Build Version
30.0.6
Environment
By downloading the VM
Environment Details
- OS: TrueNAS SCALE, running on VM following website instructions for TrueNAS scale