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

Miniforge docker image and publish images to ghcr.io #675

Merged
merged 9 commits into from
Jan 25, 2022
Merged

Conversation

banesullivan
Copy link
Contributor

@banesullivan banesullivan commented Jan 21, 2022

Hopefully, this makes it easier to run RGD within docker (or natively) on an M1 Mac - cc @mcovalt

At the moment, this will not work with the tox testing environment.

To test:

docker compose -f docker-compose.yml -f docker-compose.override.yml -f docker-compose.override.miniforge.yml build
docker compose -f docker-compose.yml -f docker-compose.override.yml -f docker-compose.override.miniforge.yml up

Current image sizes:

REPOSITORY                          TAG          IMAGE ID       CREATED        SIZE
django                              latest       4fc25bb20b1b   11 seconds ago   1.37GB
celery                              latest       3f82a97a1242   2 minutes ago    2.93GB
miniforge                           latest       0dc419cbbdaf   2 days ago       4.94GB

Once we get to #674, we should try to trim these down and ship a "base image" for downstream RGD projects - having all of the dependencies installed (but not any RGD subpackages)

@banesullivan
Copy link
Contributor Author

banesullivan commented Jan 22, 2022

I have also added a GitHub Action here to build and publish each of the three Docker images (for development use only) to the GitHub container registry. These can in many cases rapidly speed up development if you override the django and celery services to pull the images directly from ghcr.io (I have added a docker-compose override in docker-compose.override.no-build.yml).

These can be used by:

docker compose -f docker-compose.yml -f docker-compose.override.yml -f docker-compose.override.no-build.yml up

@banesullivan
Copy link
Contributor Author

NOTE: the miniforge image does not currently support/implement FUSE. We can add this, but I chose not to initially

@banesullivan banesullivan marked this pull request as ready for review January 22, 2022 00:11
@banesullivan
Copy link
Contributor Author

After this, we can address #674

@banesullivan banesullivan changed the title Miniforge docker environment Miniforge docker image and publish images to ghcr.io Jan 22, 2022
@mcovalt
Copy link
Contributor

mcovalt commented Jan 24, 2022

This is awesome! Looking forward to testing it out!

@banesullivan
Copy link
Contributor Author

Merging. Dependency refinement and image optimization can come later

@banesullivan banesullivan merged commit 0d17e90 into main Jan 25, 2022
@banesullivan banesullivan deleted the miniforge branch January 25, 2022 19:50
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

Successfully merging this pull request may close these issues.

None yet

2 participants