Comments (6)
Spent a bit of time looking into how big this image is and ways to make the image smaller. The motivation for this is that pulling a large image like this takes long which means when people login to the earthlabhub and are unlucky enough to end up on a new virtual machine that doesn't already have the image they have to wait a few minutes for the image to be pulled.
This image is based on jupyter/scipy-notebook
from the docker-stacks repo. They have some nice badges to tell you how big the image is: https://microbadger.com/images/jupyter/scipy-notebook and then our image: https://microbadger.com/images/earthlab/earth-analytics-python-env/
This makes me think our image is about 2.1G large, 600MB bigger than the jupyter/scipy-notebook (at 1.5GB).
When I pull both images to my laptop and look at docker images
I see:
REPOSITORY TAG IMAGE ID CREATED SIZE
earthlab/earth-analytics-python-env 266950b 6c8c4ad8d561 47 hours ago 6.47GB
jupyter/scipy-notebook 177037d09156 07f647bee0ec 2 days ago 4.58GB
My biggest confusion is about the fact that the size shown here seems to have nothing to do with what microbadger shows :-/
from earth-analytics-python-env.
this is beyond me! @mbjoseph just curious. do you know anything about optimizing docker image size? ours is large and we just want to make it smaller if possible as it's a slow point in our hub deployment. i could also ping the twitterverse!
from earth-analytics-python-env.
I think the short answer is to make sure that the only things installed in the image are the things that we need. For example, do we need to have everything that is pre-installed in the scipy-notebook image? The source code for it is here: https://github.com/jupyter/docker-stacks/blob/master/scipy-notebook/Dockerfile
from earth-analytics-python-env.
Agreed. But also no idea what is really needed :-/
Might investigate what minimal-notebook + environment.yml
from this repo gives in terms of size.
from earth-analytics-python-env.
ok! also i notice there that there are packages like seaborn that i may install that are already in scipy... i'm open to adjusting as needed here! thank you both
from earth-analytics-python-env.
we've worked with the conda forge folks to make this build much smaller i think!! i'll close this for now as it's been stale for a while. thank you all!
from earth-analytics-python-env.
Related Issues (20)
- Using nbclean to hide lesson code in output HOT 1
- Updating notebooks to utilize earthpy.plot functions more often HOT 2
- Test environment creation across platforms?
- Use GeoPandas 0.4.0 or greater for remote dataset reads HOT 1
- Broken builds. HOT 1
- Appveyor Build broken HOT 1
- Let's have everything based upon the miniconda install HOT 1
- nbgrader update -- force build new version HOT 2
- hillshade values issue HOT 2
- Incompatible lib versions HOT 5
- Can't create earth-analytics-python HOT 4
- Issue with earth analytics python environment HOT 6
- Change master to main HOT 5
- Get rid of travis CI and switch to github actions HOT 2
- Quickstart earth analytics environment on Colab HOT 2
- Release mac os constructor for earth-analytics-python environment
- Change maintainer in main branch HOT 1
- Upgrade Python to 3.10
- Issue installing earth analytics python environment on Mac M1
- Remove packages we don't use
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from earth-analytics-python-env.