Skip to content

Commit

Permalink
Add FAQ to README
Browse files Browse the repository at this point in the history
  • Loading branch information
gaborcsardi committed Dec 18, 2023
1 parent 9c76cff commit 055f8e1
Show file tree
Hide file tree
Showing 2 changed files with 79 additions and 0 deletions.
39 changes: 39 additions & 0 deletions README.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,45 @@ writeLines(sprintf(
))
```

## Frequently asked questions

<details>
<summary>Why does `list.files()` return an empty vector?</summary>

If you see something like
```
> list.files("/opt/R")
character(0)
```
then you need to run the entry point of the container, see the question
after the next one.
</details>

<details>
<summary>
Why is the architecture detected as `x86_64` instead of `i386`?
</summary>

You need to run the entry point of the container, see the next question.
</details>

<details>
<summary>`docker run` works, but `docker exec` does not, why?</summary>

Running 32bit (`i386`) containers on arm64 and amd64 platforms is tricky,
and to make everything work properly, we need to run a special entry point.
This entry point runs with `docker run`, but it does not for `docker exec`,
and you need to run it manually:
```
docker exec -it <container> entrypoint.sh bash
```

If you don't run the entry point then on arm64 hosts you might get file
system errors (https://github.com/r-hub/evercran/issues/7). On amd64
platforms typically the architecture will be mis-detected
(https://github.com/r-hub/evercran/issues/3).
</details>

## Similar projects, inspiration

* [rcheology](https://github.com/hughjonesd/rcheology) --
Expand Down
40 changes: 40 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ Run historical R versions on today’s computers
- [Containers with multiple R
versions](#containers-with-multiple-r-versions)
- [List of all containers](#list-of-all-containers)
- [Frequently asked questions](#frequently-asked-questions)
- [Similar projects, inspiration](#similar-projects-inspiration)
- [Thanks!](#thanks)
- [License](#license)
Expand Down Expand Up @@ -416,6 +417,45 @@ For example to run R 0.65.1:
| R 4.3.1 | `ghcr.io/r-hub/evercran/4.3.1` | `linux/amd64`, `linux/arm64` | Debian bookworm 12.1 |
| R 4.3.2 | `ghcr.io/r-hub/evercran/4.3.2` | `linux/amd64`, `linux/arm64` | Debian bookworm 12.1 |

## Frequently asked questions

<details>
<summary>
Why does `list.files()` return an empty vector?
</summary>

If you see something like

> list.files("/opt/R")
character(0)

then you need to run the entry point of the container, see the question
after the next one.
</details>
<details>
<summary>
Why is the architecture detected as `x86_64` instead of `i386`?
</summary>
You need to run the entry point of the container, see the next question.
</details>
<details>
<summary>
`docker run` works, but `docker exec` does not, why?
</summary>

Running 32bit (`i386`) containers on arm64 and amd64 platforms is
tricky, and to make everything work properly, we need to run a special
entry point. This entry point runs with `docker run`, but it does not
for `docker exec`, and you need to run it manually:

docker exec -it <container> entrypoint.sh bash

If you don’t run the entry point then on arm64 hosts you might get file
system errors (<https://github.com/r-hub/evercran/issues/7>). On amd64
platforms typically the architecture will be mis-detected
(<https://github.com/r-hub/evercran/issues/3>).
</details>

## Similar projects, inspiration

- [rcheology](https://github.com/hughjonesd/rcheology) – Data on Base
Expand Down

0 comments on commit 055f8e1

Please sign in to comment.