Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker issues #397

Closed
4 tasks done
JostMigenda opened this issue Jan 26, 2023 · 3 comments
Closed
4 tasks done

Docker issues #397

JostMigenda opened this issue Jan 26, 2023 · 3 comments
Assignees

Comments

@JostMigenda
Copy link
Contributor

JostMigenda commented Jan 26, 2023

As part of openjournals/joss-reviews#4971, I’ve tried to run the Docker image and have a couple of initial notes/issues. (This is just a quick list based on initial impressions; I didn’t want to open lots of small issues immediately, but please feel free to move individual points into their own issue if you think it’s appropriate.)

  • The total download size was ~10 GB, which was larger than I expected. I feel like that’s large enough that a warning in the README file might be appropriate.
  • Additionally, the README file recommends docker run --rm […], which according to documentation automatically removes the Docker container after it exits. Does that mean I would have to re-download the whole ~10 GB every single time? (I vaguely remember that Docker lets you update layers of a container without having to rebuild lower layers—so e.g. updating from graphnet v0.2.3 to v0.2.4 would only require downloading and rebuilding the graphnet part, but not other parts of the container (Linux, Python, PyTorch, …); that would probably be very useful here.)
  • The container downloaded by asogaard/graphnet:latest is v0.2.3; there is no container for v0.2.4 (which was tagged 11 hours ago) and the GitHub Action that automatically builds & uploads containers appears to be broken currently.
  • Once the container is built, instead of ~/graphnet (as in the README) I find myself in ~ and there is no graphnet directory. (GraphNeT itself is installed in /usr/local/lib/python3.8/dist-packages/graphnet/; but of course that doesn’t include the examples directory.) Instead, there are only:
root@c77c9a429624:~# ls
cppzmq-master/  master.tar.gz  photospline-2.0.7/
@asogaard
Copy link
Collaborator

Aye, this is known, cf. here where the build producing the image failed from v0.2.4 onwards. But working on it over here, addressing all four issues above, and will create a PR soon. :)

@asogaard asogaard self-assigned this Jan 27, 2023
@asogaard
Copy link
Collaborator

Alright, following the merge of #399 we have a new main docker image here:

  • It's 1.59 GB in size cf. approx. 10 GB before. This is down to the base icetray image used, where we have switched from combo-stable to combo-stable-slim.
  • Using the --rm option with docker run doesn't remove the downloaded image, just the running container and it's filesystem. (The idea is that if you do docker run many times without `--rm? , you create lots of persistent containers that quickly clutter a lot). So you shouldn't have to redownload the X GBs with every run. But I can try to make clear in the instructions that this is entirely optional — and that in some cases you might want to keep the container after exiting.
  • Yeah, v0.2.4 broke. The asogaard/graphnet:main container now works as intended. Once you all have had a chance to check that it looks fine, I'll create another tag (v0.2.5) such that the latest tag will also be the updated version.
  • The file system should look as indicated in the README.

So make sure that you pull the main version from Dockerhub, and let me know if you consider the four tasks above resolved. (I'll leave it to you to check them off.)

@JostMigenda
Copy link
Contributor Author

I’ve just tested asogaard/graphnet:main and it looks good now. Thanks also for clearing up my misunderstanding of --rm!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants