GithubHelp home page GithubHelp logo

Comments (13)

eddelbuettel avatar eddelbuettel commented on July 23, 2024

We probably also want an r-devel-san image to test for ASAN and UBSAN. Ideally in one. May work only with Debian (as I seem to recall issues with clang in Ubuntu).

Or do you think that is a 'specialisation' of r-devel?

from rocker.

cboettig avatar cboettig commented on July 23, 2024

Good question. I guess these sound more like use cases for an r-devel
image rather than base images that would be used on which to build other
Dockerfiles, but I don't have an adequate appreciation of sanitizing to say
for sure.

On Wed, Sep 24, 2014 at 2:55 PM, Dirk Eddelbuettel <[email protected]

wrote:

We probably also want an r-devel-san image to test for ASAN and UBSAN.
Ideally in one. May work only with Debian (as I seem to recall issues with
clang in Ubuntu).

Or do you think that is a 'specialisation' of r-devel?


Reply to this email directly or view it on GitHub
#4 (comment).

Carl Boettiger
UC Santa Cruz
http://carlboettiger.info/

from rocker.

eddelbuettel avatar eddelbuettel commented on July 23, 2024

We may want a plain r-devel, and a SAN r-devel so maybe two of them? The latter one may not need to be as visible. Or maybe one flat level is best, ie next to 'hadleyverse' and other additional specializations?

Anyway, need to get the base images in shape first...

from rocker.

cboettig avatar cboettig commented on July 23, 2024

Right, I could see it either way. Also wonder if our directory structure should be modified to reflect the difference between base images and specializations/use-cases? Guess that's easy enough to do once our images are in place, but given that you have to point to them when creating the DockerHub automatic builds it's probably better to have the directory structure well-defined from early on.

from rocker.

cboettig avatar cboettig commented on July 23, 2024

Just noting here that Debian Hub images are now added; whether we maintain Ubuntu images is now an open question.

My unsubstantiated observations for maintaining Ubuntu images is simply that some users will probably prefer to them both for execution and as a base for other images. Reasons for this include:

  • users might be more likely to have Ubuntu base image already available due to frequent (i.e. in my anecdotal experience) use in other Dockerfiles
  • some users might find it easier to build off of Ubuntu base images for their own Dockerfiles (i.e. because more users are likely to know the ubuntu repositories; for instance, from Travis-CI, other CI, or their own machines).

Of course other users will use the debian files for the same reasons, but since we have only a few base images, it seems reasonable to support both. Perhaps we wouldn't write both flavors for the "use case" images like hadleyverse, etc, I don't know.

from rocker.

eddelbuettel avatar eddelbuettel commented on July 23, 2024

Well regarding

  • point one we would have to know what is really being picked up by the cache, and if I look at our image size the relative size of the Debian testing base we start from matters little
  • that is a pretty weak 'status quo and nothing else' argument given that almost all packages will behave identically...

It's still a tough call, I think I may need Debian for ASAN/UBSAN and newer compilers. I think folks may prefer Ubuntu by voting with their feet. It's probably best to add them now, image by image as we;ve done for Debian, and then see what happens.

Other thoughts?

from rocker.

cboettig avatar cboettig commented on July 23, 2024

Having (only) a Debain ASAN/UBSAN sounds fine to me -- my understanding is
that serves a particular audience 'usecase' like hadleyverse rather than a
'base image' like 'r-base'.

yeah, I'm not sure that the case for Ubuntu really justifies maintaining
two different lines, but having an Ubuntu version of r-base, r-devel &
r-studio seems simple enough, and like you say, from there we can just wait
and see.

On Tue, Sep 30, 2014 at 10:42 AM, Dirk Eddelbuettel <
[email protected]> wrote:

Well regarding

  • point one we would have to know what is really being picked up by
    the cache, and if I look at our image size the relative size of the Debian
    testing base we start from matters little
  • that is a pretty weak 'status quo and nothing else' argument given
    that almost all packages will behave identically...

It's still a tough call, I think I may need Debian for ASAN/UBSAN and
newer compilers. I think folks may prefer Ubuntu by voting with their feet.
It's probably best to add them now, image by image as we;ve done for
Debian, and then see what happens.

Other thoughts?


Reply to this email directly or view it on GitHub
#4 (comment).

Carl Boettiger
UC Santa Cruz
http://carlboettiger.info/

from rocker.

eddelbuettel avatar eddelbuettel commented on July 23, 2024

Preferences differ. I'd rather use Debian r-base, r-devel, ...

from rocker.

eddelbuettel avatar eddelbuettel commented on July 23, 2024

So as a base for discussion:

r-base, r-devel, r-studio: in both Debian and Ubuntu
hadleyverse, ropensci: whichever you prefer, presumably Ubuntu ?
r-dev-san [or whatever name we pick] presumably Debian as newer compilers may matter?

Thoughts? Or punt and do "everything everywhere?" Might be suboptimal...

from rocker.

cboettig avatar cboettig commented on July 23, 2024

Yeah, I agree that everything everywhere seems kinda silly.

The reason I'd use a ubuntu version myself is only to make it easier to
reuse work that others are doing. For instance, the Berkeley BCE guys are
building on ubuntu. I can thus create a Dockerfile that just runs their
shell script on top of a ubuntu-flavored rstudio but not on top of a debian
one.

That's just one example. I've encountered this in other cases too, whether
it's grabbing dependencies from someone's .travis.yml or other CI (all
Ubuntu-based) or someone else's Dockerfile. If everyone was using Debian
I'd be happy to stick to Debian, but as it is I see that as a potential
barrier to certain re-use cases that I think we want to support.

On Tue, Sep 30, 2014 at 11:12 AM, Dirk Eddelbuettel <
[email protected]> wrote:

So as a base for discussion:

r-base, r-devel, r-studio: in both Debian and Ubuntu
hadleyverse, ropensci: whichever you prefer, presumably Ubuntu ?
r-dev-san [or whatever name we pick] presumably Debian as newer compilers
may matter?

Thoughts? Or punt and do "everything everywhere?" Might be suboptimal...


Reply to this email directly or view it on GitHub
#4 (comment).

Carl Boettiger
UC Santa Cruz
http://carlboettiger.info/

from rocker.

eddelbuettel avatar eddelbuettel commented on July 23, 2024

What makes you think it would not work? apt-get is the same command everywhere, and we are working on logical dependencies. [ Some crazy people mix binaries. ] Maybe we should encourage the BCE folks to support both as there is not reason not to.

Ubuntu is brilliant, and I use it on laptops and desktop as I value the polishing. However, in a containerized app the advantage is less clear -- and I feel it lies with Debian.

So yep, for the time being, doing both may work best.

from rocker.

cboettig avatar cboettig commented on July 23, 2024

Sometimes it seems packages get different names on the ubuntu and debian
repositories. e.g. in setting up ropensci, libgdal1 on ubuntu (a dependency
I copied from Scott's .travis.yml) is libgdal1h on debian, or otherwise
provide different versions that raise the potential for conflict.
Likewise, the differences between the rstudio dockerfiles (apparmor, the
need for a different libssl on the debian, at least according to RStudio
documentation). No idea how common such issues are. With BCE, I'm just
running their big shell script inside a Dockerfile -- seemed like it might
not be safe to just assume it would work.

So for me, the use case is just to maximize the modularity and minimize the
chance of crazy stuff happening by mixing binaries. (Of course this goes
both ways, I'd want a debian image if BCE or somesuch was building on
Debian -- certainly not suggesting we have only ubuntu). I'll try
suggesting to BCE guys to consider a debian build, but unlike us they
aren't really providing as modular a use case (in general I think VMs are
less modular than docker images in this respect).

Anyway, sounds like we're happy to create both debian and ubuntu base
images for the time being and see what happens.

On Tue, Sep 30, 2014 at 11:44 AM, Dirk Eddelbuettel <
[email protected]> wrote:

What makes you think it would not work? apt-get is the same command
everywhere, and we are working on logical dependencies. [ Some crazy
people mix binaries. ] Maybe we should encourage the BCE folks to support
both as there is not reason not to.

Ubuntu is brilliant, and I use it on laptops and desktop as I value the
polishing. However, in a containerized app the advantage is less clear --
and I feel it lies with Debian.

So yep, for the time being, doing both may work best.


Reply to this email directly or view it on GitHub
#4 (comment).

Carl Boettiger
UC Santa Cruz
http://carlboettiger.info/

from rocker.

cboettig avatar cboettig commented on July 23, 2024

Done. Now moving to all Debian. simplicity here we come.

from rocker.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.