Fix version of qlever script and improve Docker image help message#2605
Fix version of qlever script and improve Docker image help message#2605hannahbast wants to merge 2 commits intomasterfrom
qlever script and improve Docker image help message#2605Conversation
As part of building the Docker image, the `qlever` command-line tool is installed. So far, the version of this script was not fixed, which led to random behavior due to caching issue. Now it is fixed to a version that is compatible with the master. On the side, improve the help message shown when running `docker run adfreiburg/qlever` without arguments.
There was a problem hiding this comment.
Pull request overview
This PR fixes the version of the qlever command-line tool installed in the Docker image and improves the help message displayed when running the container without proper arguments. The version is pinned to 0.5.35 to avoid caching issues and ensure compatibility with the master branch.
Key Changes
- Pin
qleverCLI tool version to 0.5.35 in the Dockerfile - Rewrite the help message to better explain the recommended usage pattern (using the external CLI tool)
- Update Docker image references from
qleverto the full image nameadfreiburg/qlever
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| Dockerfile | Pins the qlever package installation to version 0.5.35 to prevent caching issues |
| docker-entrypoint.sh | Rewrites the help message to emphasize using the external qlever CLI tool and simplifies the container usage instructions |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
docker-entrypoint.sh
Outdated
| # Help message that is printed if the container is not startes as recommended. | ||
| HELP_MESSAGE=' | ||
| The recommended way to run a container with this image is as follows. Run in a fresh directory. Add `-p <outside port>:<inside port>` if you want to expose ports. Inside the container, the `qlever` command-line tool is available, as well as the QLever binaries (which you need not call directly, they are called by the various `qlever` commands). | ||
| The recommended way to use is this image is with the `qlever` command-line tool, which can be installed with `pip install qlever`, `pipx install qlever`, or `uv tool install qlever`. Commands like `qlever index` or `qlever start` use the QLever Docker image by default (and will pull the right image if necessary). |
There was a problem hiding this comment.
Grammar error: "to use is this image is" should be "to use this image is". The word "is" appears twice.
docker-entrypoint.sh
Outdated
| \x1b[34mdocker run -it --rm -e UID=$(id -u) -e GID=$(id -g) -v $(pwd):/data -w /data adfreiburg/qlever\x1b[0m | ||
|
|
||
| It also works with `-u $(id -u):$(id -g)` (but then the user inside the container has no proper name): | ||
| If you do not care about the user inside of the container, you can also use `-u $(id -u):$(id -g)` instead of `-e UID=... -e GID=...` (then the use inside of the container has no proper name) or omit this part (then the user inside of the container is `root`). |
There was a problem hiding this comment.
Spelling error: "the use inside of the container" should be "the user inside of the container" (missing 'r').
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #2605 +/- ##
==========================================
+ Coverage 91.19% 91.21% +0.02%
==========================================
Files 473 475 +2
Lines 40392 40497 +105
Branches 5393 5409 +16
==========================================
+ Hits 36835 36939 +104
- Misses 2015 2018 +3
+ Partials 1542 1540 -2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Overview
Conformance check passed ✅No test result changes. |
|
| # Help message that is printed if the container is not startes as recommended. | ||
| HELP_MESSAGE=' | ||
| The recommended way to run a container with this image is as follows. Run in a fresh directory. Add `-p <outside port>:<inside port>` if you want to expose ports. Inside the container, the `qlever` command-line tool is available, as well as the QLever binaries (which you need not call directly, they are called by the various `qlever` commands). | ||
| The recommended way to use this image is with the `qlever` command-line tool, which can be installed with `pip install qlever`, `pipx install qlever`, or `uv tool install qlever`. Commands like `qlever index` or `qlever start` use the QLever Docker image by default (and will pull the right image if necessary). |
There was a problem hiding this comment.
will pull the right image if necessary
For some users it might be confusing that if a qlever:latest image already exists locally (regardless of age) no new image is pulled and they have to pull it manually if they want a more up-to-date version.
|
|
||
| \x1b[34mpodman run -it --rm -u $(id -u):$(id -g) --userns=keep-id -v $(pwd):/data -w /data qlever\x1b[0m | ||
| \x1b[34mpodman run -it --rm -u $(id -u):$(id -g) --userns=keep-id -v $(pwd):/data -w /data qlever -c "..."\x1b[0m | ||
| With podman you should use `-u $(id -u):$(id -g)` together with `--userns=keep-id`. |
There was a problem hiding this comment.
It's nice that this is documented, but why does it matter to me as a regular user if my user is root, some number or my username?



As part of building the Docker image, the
qlevercommand-line tool is installed. So far, the version of this script was not fixed, which led to random behavior due to caching issue. Now it is fixed to a version that is compatible with the master.On the side, improve the help message shown when running
docker run adfreiburg/qleverwithout arguments.