Dockerfile: add utils/ in $PATH by default, for easy indexing

Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com>
This commit is contained in:
Théo Lebrun 2024-12-21 17:24:52 +01:00
parent 43a0eba20a
commit 808ed15dbc
2 changed files with 7 additions and 11 deletions

View file

@ -255,7 +255,7 @@ as a front-end to reduce the load on the server running the Elixir code.
== Keeping Elixir databases up to date
To keep your Elixir databases up to date and index new versions that are released,
we're proposing to use a script like `utils/index /srv/elixir-data --all` which is called
we're proposing to use a script like `index /srv/elixir-data --all` which is called
through a daily cron job.
You can set `$ELIXIR_THREADS` if you want to change the number of threads used by
@ -282,18 +282,14 @@ The Docker image does not contain any repositories.
To index a repository, you can use the `index-repository` script.
For example, to add the https://musl.libc.org/[musl] repository, run:
# docker exec -it -e PYTHONUNBUFFERED=1 elixir-container \
/usr/local/elixir/utils/index -c '/srv/elixir-data musl'
Without PYTHONUNBUFFERED environment variable, update logs may show up with a delay.
# docker exec -it elixir-container index /srv/elixir-data musl
Or, to run indexing in a separate container:
# docker run -e PYTHONUNBUFFERED=1 -v ./elixir-data/:/srv/elixir-data \
--entrypoint /usr/local/elixir/utils/index elixir -c \
'/srv/elixir-data musl'
# docker run -v ./elixir-data/:/srv/elixir-data \
--entrypoint index elixir /srv/elixir-data musl
You can also use `utils/index /srv/elixir-data --all` to start indexing all officially supported repositories.
You can also use `index /srv/elixir-data --all` to start indexing all officially supported repositories.
After indexing is done, Elixir should be available under the following URL on your host:
http://172.17.0.2/musl/latest/source
@ -305,7 +301,7 @@ If 172.17.0.2 does not answer, you can check the IP address of the container by
== Automatic repository updates
The Docker image does not automatically update repositories by itself.
You can, for example, start `utils/index /srv/elixir-data --all` in the container (or in a separate container, with Elixir data volume/directory mounted)
You can, for example, start `index /srv/elixir-data --all` in the container (or in a separate container, with Elixir data volume/directory mounted)
from cron on the host to periodically update repositories.
== Using Docker image as a development server

View file

@ -57,7 +57,7 @@ ARG ELIXIR_VERSION
ENV ELIXIR_VERSION=$ELIXIR_VERSION \
ELIXIR_ROOT=/srv/elixir-data \
PATH="/usr/local/elixir/venv/bin:$PATH" \
PATH="/usr/local/elixir/utils:/usr/local/elixir/venv/bin:$PATH" \
PYTHONUNBUFFERED=1
ENTRYPOINT ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]