Closed TerryLansdown closed 2 years ago
Thanks. You haven't told us which images you're pulling, but yeah, you'll need ARM based images. We have these for r-base
, see https://hub.docker.com/_/r-base?tab=tags, but not the r-ver stack
Hi, thanks for your reply. I've tried several. For example, if I:
docker run --rm -ti rocker/r-base
Docker pulls: a97aebd263e29f9feb44f45ba1015c1ad610c863f12e0ca4706c77090ed9d16f
then I get…
standard_init_linux.go:211: exec user process caused "exec format error"
again. I'm running on Raspi4.
Thanks.
That may just the git commit
sha signifying the Dockerfile meta-data driving that build. And it w\orks here (on x86_64) but I don't have a Raspberry Pi or other Arm machine to test for.
edd@rob:~$ docker run --rm -ti rocker/r-base:latest Rscript --version
R scripting front-end version 4.0.3 (2020-10-10)
edd@rob:~$
Ok, thanks. If I run that:
$ docker run --rm -ti rocker/r-base:latest Rscript --version
Unable to find image 'rocker/r-base:latest' locally
latest: Pulling from rocker/r-base
4363cc522034: Pull complete
84b4f34362bc: Pull complete
5a06f0a021ca: Pull complete
642a4d4f99ab: Pull complete
d36c605538a6: Pull complete
b6393690e150: Pull complete
Digest: sha256:a97aebd263e29f9feb44f45ba1015c1ad610c863f12e0ca4706c77090ed9d16f
Status: Downloaded newer image for rocker/r-base:latest
standard_init_linux.go:211: exec user process caused "exec format error"
A bit stuck now, but thanks.
man docker-pull
suggests the --platform=""
option.
In a more general sense, you may need to consult a 'how do I use Docker on Raspberry Pi' tutorial.
Very late answer, but r-base
(formally docker.io/library/r-base
) and rocker/r-base
(formally docker.io/rocker/r-base
) are different images.
Only the former is a multi-arch image, so you need to run docker pull r-base
or docker pull docker.io/library/r-base
to make it work on your Raspberry Pi.
Actually rocker/r-base and 'r-base' are the same thing. I maintain both and PR to the upstream. The current file is
Maintainers: Carl Boettiger <rocker-maintainers@eddelbuettel.com> (@cboettig),
Dirk Eddelbuettel <rocker-maintainers@eddelbuettel.com> (@eddelbuettel)
GitRepo: https://github.com/rocker-org/rocker.git
Tags: 4.1.1, latest
Architectures: amd64, arm64v8, ppc64le, s390x
GitCommit: a2dc8a7816d7cf8adab20ee9baf7d4ae283b4b92
Directory: r-base/4.1.1
and it lists the four hardware architectures it builds for. Now, these four exist for r-base and this does, sadly, not imply any other Rocker Project containers also automatically exist.
I think the difference between r-base
and rocker/r-base
, which originate from the same repository, is hard to understand for beginners.
As far as I am aware, there is nothing that exists in rocker/r-base
that does not exist in r-base
, so it would be more helpful if the documentation stated to use r-base
instead of rocker/r-base
.
(Of course, it's understandable that both images are maintained for compatibility and sustainability reasons.)
Well, there is no difference. Same product, offered in two "stores" or lines. Your point is taken but differentiating is actually hard because rocker/* has half dozen or more other containers built on top, as it should. The official library has an official (single !!) container for R, as it does for a hundred or other things (name your language or DB or service and it will be there).
So steady state is not all that bad.
Explaining, as our paper does, that one half Rocker is fundamentally a little different from the other (as they both serve worthy but slightly different goals) may be more complicated and confusing.
I think it has been answered, so I will close it.
Hi,
I've pulled both the latest and devel images, and both are giving me the following error.
Trying to run the docker image on a raspi4. I'm guessing I'm doing something silly, but any tips would be appreciated.
Thanks!