aiidalab / aiidalab/aiidalab-docker-stack

New jupyter image has a default entrypoint, making debugging annoying

Open
#583 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
10
Forks
15
Avg merge
1d 18h
Merged PRs (30d)
3

Description

I often run one-off commands on the image to debug them, e.g.

```
docker run --rm aiidalab/full-stack:edge pip show aiida-core
```

I noticed that since we upgraded to Python 3.12 image, the container first goes through the whole startup sequence (including all the added AiiDAlab services) and only then executes the command, which is very annoying.

The workaround is to override the entrypoint like so

```
docker run --rm --entrypoint bash aiidalab/full-stack:edge -c "pip show aiida-core"
```

(notice the extra `-c` and quoting)

At the very least we should document this in README, and perhaps consider overriding the ENTRYPOINT to go back to the previous behaviour? Not sure what the implications would be.

Here's a good primer about a differences between `RUN`, `CMD` and `ENTRYPOINT`:

https://www.docker.com/blog/docker-best-practices-choosing-between-run-cmd-and-entrypoint/

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.