# Installation of R/dsBase package via OPAL admin GUI failed

**URL:** <https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692>\
**Category:** Beginner Support\
**Created:** [1 February 2023 07:48 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692 "2023-02-01T07:48:39Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![shinyrhino](https://avatars.discourse-cdn.com/v4/letter/s/76d3ee/32.png) [@shinyrhino](https://datashield.discourse.group/u/shinyrhino)\
**Post date:** [1 February 2023 07:48 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692/1 "2023-02-01T07:48:39Z")

</div>

Hi,

I tried to install R/dsBase package via OPAL/admin but got this error:

> POST /service/r/cluster/default/packages?name=dsBase&manager=cran : Gateway Time-out (504):
> 
> # 504 Gateway Time-out
> 
> nginx/1.18.0

Installation via R script gives similar error:

> dsadmin.install\_package(o, ‘dsBase’) Error: [Server error: (504) Gateway Timeout]

How do I fix this?

## Kr, Shiny

---

<div class="post-metadata">

**Author:** ![yannick](https://yyz2.discourse-cdn.com/free1/user_avatar/datashield.discourse.group/yannick/32/19_2.png) [@yannick](https://datashield.discourse.group/u/yannick)\
**Post date:** [1 February 2023 08:12 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692/2 "2023-02-01T08:12:37Z")

</div>

Hi,

See the logs of the R server, it is the one that makes time to respond. Installing R packages is always a pain. This is why it is recommended to use a Docker image for the R server, in order to have a ready-to-use and reproducible R environment.

See documentation: [How to Set up DataSHIELD Server Profiles — Opal documentation](https://opaldoc.obiba.org/en/latest/cookbook/r-datashield/datashield-profiles.html)

Regards  
Yannick

---

<div class="post-metadata">

**Author:** ![shinyrhino](https://avatars.discourse-cdn.com/v4/letter/s/76d3ee/32.png) [@shinyrhino](https://datashield.discourse.group/u/shinyrhino)\
**Post date:** [1 February 2023 08:29 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692/3 "2023-02-01T08:29:50Z")

</div>

Thanks, is there a ready to use R server image? I used the default DataShield docker image (cf Opal doc), which does not contain the dsBase package. Kr, Shiny

---

<div class="post-metadata">

**Author:** ![yannick](https://yyz2.discourse-cdn.com/free1/user_avatar/datashield.discourse.group/yannick/32/19_2.png) [@yannick](https://datashield.discourse.group/u/yannick)\
**Post date:** [1 February 2023 08:49 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692/4 "2023-02-01T08:49:00Z")

</div>

Yes, use [datashield/rock-base](https://hub.docker.com/r/datashield/rock-base) as stated here:

[https://opaldoc.obiba.org/en/latest/cookbook/r-datashield/r-profiles.html#step-1-prepare-docker-images](https://opaldoc.obiba.org/en/latest/cookbook/r-datashield/r-profiles.html#step-1-prepare-docker-images)

---

<div class="post-metadata">

**Author:** ![shinyrhino](https://avatars.discourse-cdn.com/v4/letter/s/76d3ee/32.png) [@shinyrhino](https://datashield.discourse.group/u/shinyrhino)\
**Post date:** [1 February 2023 23:53 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692/5 "2023-02-01T23:53:15Z")

</div>

Hi,

I am running now the datashield/rock-base image in parallel to the obiba/rock:latest image. How do i tell OPAL to use the datashield/rock-base process. How do I discover the process in the OPAL / Application interface?

> CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES  
> b9f80b2c4300 datashield/rock-base “/docker-entrypoint.…” 4 minutes ago Up 4 minutes 8085/tcp magical\_kalam  
> f97152cfc0f0 obiba/opal:latest “/bin/bash /docker-e…” 26 hours ago Up 26 hours 0.0.0.0:8880-\>8080/tcp, :::8880-\>8080/tcp, 0.0.0.0:8843-\>8443/tcp, :::8843-\>8443/tcp docker\_opal\_1  
> 8a86431ac6d8 obiba/rock:latest “/docker-entrypoint.…” 26 hours ago Up 26 hours 8085/tcp docker\_rock\_1  
> 56c5b78ba0c0 mongo:4.2 “docker-entrypoint.s…” 26 hours ago Up 26 hours 27017/tcp docker\_mongo\_1  
> 4ce40b730886 mysql:5 “docker-entrypoint.s…” 26 hours ago Up 26 hours 3306/tcp, 33060/tcp docker\_mysqldata\_1

Kr, Shiny

---

<div class="post-metadata">

**Author:** ![yannick](https://yyz2.discourse-cdn.com/free1/user_avatar/datashield.discourse.group/yannick/32/19_2.png) [@yannick](https://datashield.discourse.group/u/yannick)\
**Post date:** [2 February 2023 08:12 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692/6 "2023-02-02T08:12:26Z")

</div>

Hi,

It is explained here:

[https://opaldoc.obiba.org/en/latest/cookbook/r-datashield/r-profiles.html#step-3-discover-rock-r-servers-in-opal](https://opaldoc.obiba.org/en/latest/cookbook/r-datashield/r-profiles.html#step-3-discover-rock-r-servers-in-opal)

Regards  
Yannick

---

<div class="post-metadata">

**Author:** ![shinyrhino](https://avatars.discourse-cdn.com/v4/letter/s/76d3ee/32.png) [@shinyrhino](https://datashield.discourse.group/u/shinyrhino)\
**Post date:** [2 February 2023 08:21 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692/7 "2023-02-02T08:21:50Z")

</div>

Dear Yannick, thanks, seen that! However, what URL do I have to use for the new Rock server? Currently, [http://rock:8085](http://rock:8085) is registered. Which new URL do I have to fill in in the OPAL/Administration/Apps/Discovery section, so the new Rock server (datashield/rock-base, see output above) is discovered?

Kr, Shiny

---

<div class="post-metadata">

**Author:** ![yannick](https://yyz2.discourse-cdn.com/free1/user_avatar/datashield.discourse.group/yannick/32/19_2.png) [@yannick](https://datashield.discourse.group/u/yannick)\
**Post date:** [2 February 2023 08:45 UTC](https://datashield.discourse.group/t/installation-of-r-dsbase-package-via-opal-admin-gui-failed/692/8 "2023-02-02T08:45:55Z")

</div>

It depends on your docker compose settings. In the docker’s local network, the service called `rock` is accessed via [http://rock:8085](http://rock:8085) then similarly if there is a new R server container running in the same space and you have called it `datashield` (for instance), then you’ll add [http://datashield:8085](http://datashield:8085)

Also you have declared 2 different R server profiles, with one that is not for Datashield usage: there is no reason for doing that and it is a potential source of confusion. Just declare that the “rock” service is based on the “datashield/rock-base:latest” image.

Yannick
