MatthewCroughan / octobalena

Control your 3d-printer with octoprint + octoscreen via balena!
GNU General Public License v2.0
49 stars 22 forks source link

Container footprint is quite large #22

Open ajlennon opened 3 years ago

ajlennon commented 3 years ago

There seem to be a lot of dependencies installed, particularly for OctoDash.

Container size is pretty large as a result

[Info]            │ Service        │ Image Size │ Delta Size │ Build Time            │
[Info]            ├────────────────┼────────────┼────────────┼───────────────────────┤
[Info]            │ octoprint      │ 524.69 MB  │ 54.13 MB   │ 5 minutes, 54 seconds │
[Info]            ├────────────────┼────────────┼────────────┼───────────────────────┤
[Info]            │ octodash       │ 763.66 MB  │ 2.06 MB    │ 2 minutes, 42 seconds │
[Info]            ├────────────────┼────────────┼────────────┼───────────────────────┤
[Info]            │ traefik        │ 62.16 MB   │ 0 bytes    │ 2 seconds             │
[Info]            ├────────────────┼────────────┼────────────┼───────────────────────┤
[Info]            │ mdns-publisher │ 103.76 MB  │ 430.82 KB  │ 1 minute, 3 seconds   │
[Info]            └────────────────┴────────────┴────────────┴───────────────────────┘

We should be able to reduce this I would think. In particular OctoDash

MatthewCroughan commented 3 years ago

If you have any idea how to improve on that, it would be most welcome. I have no idea how NPM works, or how to create a good, minimal build for an NPM app. I tried my best and left comments, so it should be possible to pick it up.