nuest / ten-simple-rules-dockerfiles

Ten Simple Rules for Writing Dockerfiles for Reproducible Data Science
https://doi.org/10.1371/journal.pcbi.1008316
Creative Commons Attribution 4.0 International
64 stars 15 forks source link

Discussion - Rule 7. Enable interactive usage and one-click execution #14

Closed psychemedia closed 4 years ago

psychemedia commented 5 years ago

So this is about usability of the thing being containerised, right?

I think containers can do several things:

Other Docker images may be built as base containers that are provided simply as a base for other images, and as such offer no UI / expose no "useful" end-user application/service.

This rule also hints at things like repo2docker and services that can be used to 1-click publish and run containerised services if they are suitably exposed.

The rule may also hint at supporting the ability to run tests against the container? (I don't think tests are mentioned anywhere else?)

psychemedia commented 5 years ago

I'm not sure if this fits here, but adding EXPOSE $PORT commands is really useful if you launch containers using Kitematic, because even if you don't map the ports, it shows they are available and the UI allows you to set the port mapping and make the mapped port available on localhost.