Skip to content

Commit 5152ad3

Browse files
committed
feat: R 4.4.2, ubuntu 24, rock 2.1.1 and gosu from system
1 parent 3c54982 commit 5152ad3

File tree

4 files changed

+43
-58
lines changed

4 files changed

+43
-58
lines changed

Dockerfile

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,11 @@
44
# https://github.com/obiba/docker-rock
55
#
66

7-
FROM tianon/gosu:latest AS gosu
7+
FROM obiba/obiba-r:4.4.2 AS server
88

99
LABEL OBiBa <dev@obiba.org>
1010

11-
FROM obiba/obiba-r:4.4.1 AS server
12-
13-
ENV ROCK_VERSION 2.1.0
11+
ENV ROCK_VERSION 2.1.1
1412
ENV ROCK_HOME /srv
1513
ENV JAVA_OPTS -Xmx2G
1614

@@ -26,10 +24,6 @@ RUN set -x && \
2624
adduser --system --home /var/lib/rock --no-create-home --disabled-password rock; \
2725
chmod +x /usr/share/rock/bin/rock
2826

29-
COPY --from=gosu /usr/local/bin/gosu /usr/local/bin/
30-
31-
RUN chmod +x /usr/share/rock/bin/rock
32-
3327
COPY bin /opt/obiba/bin
3428
COPY conf/application.yml /usr/share/rock/conf/application.yml
3529
COPY conf/Rserv.conf /usr/share/rock/conf/Rserv.conf
@@ -41,13 +35,14 @@ RUN chmod +x -R /opt/obiba/bin && \
4135

4236
RUN \
4337
# Additional system dependencies
44-
apt-get update && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && DEBIAN_FRONTEND=noninteractive apt-get install -y procps libsasl2-dev libssh-dev libjq-dev libgit2-dev libmariadb-dev libmariadb-dev-compat libpq-dev libsodium-dev libgit2-dev libssh2-1-dev openssh-client cmake && \
38+
apt-get update && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && DEBIAN_FRONTEND=noninteractive apt-get install -y gosu procps libsasl2-dev libssh-dev libjq-dev libgit2-dev libmariadb-dev libmariadb-dev-compat libpq-dev libsodium-dev libgit2-dev libssh2-1-dev openssh-client cmake && \
4539
# Update R packages
4640
#RUN Rscript -e "update.packages(ask = FALSE, repos = c('https://cloud.r-project.org'), instlib = '/usr/local/lib/R/site-library')" && \
4741
# Install required R packages
4842
Rscript -e "install.packages('Rserve', '/usr/local/lib/R/site-library', 'http://www.rforge.net/')" && \
4943
Rscript -e "install.packages(c('resourcer', 's3.resourcer'), repos = c('https://cloud.r-project.org'), lib = c('/var/lib/rock/R/library'), dependencies = TRUE)" && \
50-
chown -R rock /var/lib/rock/R/library
44+
chown -R rock /var/lib/rock/R/library && \
45+
chown -R rock $ROCK_HOME
5146

5247
# Install up-to-date version of apache arrow
5348
# Copy script to install deps

Makefile

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,10 @@
33
#
44

55
no_cache=false
6-
r=4.3
7-
8-
all:
9-
sudo docker build --no-cache=true -t="obiba/rock:$(tag)-R$(r)" . && \
10-
sudo docker build -t="obiba/rock:$(tag)" . && \
11-
sudo docker build -t="obiba/rock:latest" . && \
12-
sudo docker image push obiba/rock:$(tag)-R$(r) && \
13-
sudo docker image push obiba/rock:$(tag) && \
14-
sudo docker image push obiba/rock:latest
156

167
# Build Docker image
178
build:
18-
sudo docker build --no-cache=$(no_cache) -t="obiba/rock:$(tag)" .
9+
docker build --pull --no-cache=$(no_cache) -t="obiba/rock:$(tag)" . --progress=plain
1910

2011
push:
21-
sudo docker image push obiba/rock:$(tag)
12+
docker image push obiba/rock:$(tag)

docker-compose.yml

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,21 @@
1-
version: '3'
21
services:
32
rock:
43
image: obiba/rock:latest
54
ports:
65
- ${PORT}:8085
7-
environment:
8-
- ROCK_ADMINISTRATOR_NAME=${ROCK_ADMINISTRATOR_NAME}
9-
- ROCK_ADMINISTRATOR_PASSWORD=${ROCK_ADMINISTRATOR_PASSWORD}
10-
- ROCK_MANAGER_NAME=${ROCK_MANAGER_NAME}
11-
- ROCK_MANAGER_PASSWORD=${ROCK_MANAGER_PASSWORD}
12-
- ROCK_USER_NAME=${ROCK_USER_NAME}
13-
- ROCK_USER_PASSWORD=${ROCK_USER_PASSWORD}
14-
- ROCK_ID=${ROCK_ID}
15-
- ROCK_CLUSTER=${ROCK_CLUSTER}
16-
- ROCK_TAGS=${ROCK_TAGS}
6+
#environment:
7+
#- ROCK_ADMINISTRATOR_NAME=${ROCK_ADMINISTRATOR_NAME}
8+
#- ROCK_ADMINISTRATOR_PASSWORD=${ROCK_ADMINISTRATOR_PASSWORD}
9+
#- ROCK_MANAGER_NAME=${ROCK_MANAGER_NAME}
10+
#- ROCK_MANAGER_PASSWORD=${ROCK_MANAGER_PASSWORD}
11+
#- ROCK_USER_NAME=${ROCK_USER_NAME}
12+
#- ROCK_USER_PASSWORD=${ROCK_USER_PASSWORD}
13+
#- ROCK_ID=${ROCK_ID}
14+
#- ROCK_CLUSTER=${ROCK_CLUSTER}
15+
#- ROCK_TAGS=${ROCK_TAGS}
1716
# for self-registration
1817
#- ROCK_SERVER=${ROCK_SERVER}
1918
#- ROCK_OPAL_SERVER=${ROCK_OPAL_SERVER}
2019
#- ROCK_OPAL_TOKEN=${ROCK_OPAL_TOKEN}
21-
volumes:
22-
- ${PROJECT_HOME}/rock_home:/srv
20+
#volumes:
21+
#- ${PROJECT_HOME}:/srv

scripts/install-arrow.bash

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,42 @@
11
#!/bin/bash
22

3-
sudo apt update
4-
sudo apt install -y -V ca-certificates lsb-release wget
3+
apt-get update
4+
apt-get install -y ca-certificates lsb-release wget
55
wget https://apache.jfrog.io/artifactory/arrow/$(lsb_release --id --short | tr 'A-Z' 'a-z')/apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
6-
sudo apt install -y -V ./apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
7-
sudo apt update
8-
sudo apt install -y -V libarrow-dev # For C++
9-
sudo apt install -y -V libarrow-glib-dev # For GLib (C)
10-
sudo apt install -y -V libarrow-dataset-dev # For Apache Arrow Dataset C++
11-
sudo apt install -y -V libarrow-flight-dev # For Apache Arrow Flight C++
6+
apt-get install -y ./apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
7+
apt-get update
8+
apt-get install -y libarrow-dev # For C++
9+
apt-get install -y libarrow-glib-dev # For GLib (C)
10+
apt-get install -y libarrow-dataset-dev # For Apache Arrow Dataset C++
11+
apt-get install -y libarrow-flight-dev # For Apache Arrow Flight C++
1212
# Notes for Plasma related packages:
1313
# * You need to enable "non-free" component on Debian GNU/Linux
1414
# * You need to enable "multiverse" component on Ubuntu
1515
# * You can use Plasma related packages only on amd64
16-
sudo apt install -y -V libplasma-dev # For Plasma C++
17-
sudo apt install -y -V libplasma-glib-dev # For Plasma GLib (C)
18-
sudo apt install -y -V libgandiva-dev # For Gandiva C++
19-
sudo apt install -y -V libgandiva-glib-dev # For Gandiva GLib (C)
20-
sudo apt install -y -V libparquet-dev # For Apache Parquet C++
21-
sudo apt install -y -V libparquet-glib-dev # For Apache Parquet GLib (C)
16+
apt-get install -y libplasma-dev # For Plasma C++
17+
apt-get install -y libplasma-glib-dev # For Plasma GLib (C)
18+
apt-get install -y libgandiva-dev # For Gandiva C++
19+
apt-get install -y libgandiva-glib-dev # For Gandiva GLib (C)
20+
apt-get install -y libparquet-dev # For Apache Parquet C++
21+
apt-get install -y libparquet-glib-dev # For Apache Parquet GLib (C)
2222

2323

2424

2525
# https://arrow.apache.org/install/
26-
apt update
27-
apt install -y -V ca-certificates lsb-release wget
26+
apt-get update
27+
apt-get install -y ca-certificates lsb-release wget
2828
if [ $(lsb_release --codename --short) = "stretch" ]; then
2929
tee /etc/apt/sources.list.d/backports.list <<APT_LINE
3030
deb http://deb.debian.org/debian $(lsb_release --codename --short)-backports main
3131
APT_LINE
3232
fi
3333
# get the LATEST version of Arrow
3434
wget https://apache.jfrog.io/artifactory/arrow/$(lsb_release --id --short | tr 'A-Z' 'a-z')/apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
35-
apt install -y -V ./apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
36-
apt update
37-
apt install -y -V libarrow-dev # For C++
38-
apt install -y -V libarrow-glib-dev # For GLib (C)
39-
apt install -y -V libarrow-dataset-dev # For Arrow Dataset C++
40-
apt install -y -V libarrow-flight-dev # For Flight C++
41-
apt install -y -V libparquet-dev # For Apache Parquet C++
42-
apt install -y -V libparquet-glib-dev # For Apache Parquet GLib (C)
35+
apt-get install -y ./apache-arrow-apt-source-latest-$(lsb_release --codename --short).deb
36+
apt-get update
37+
apt-get install -y libarrow-dev # For C++
38+
apt-get install -y libarrow-glib-dev # For GLib (C)
39+
apt-get install -y libarrow-dataset-dev # For Arrow Dataset C++
40+
apt-get install -y libarrow-flight-dev # For Flight C++
41+
apt-get install -y libparquet-dev # For Apache Parquet C++
42+
apt-get install -y libparquet-glib-dev # For Apache Parquet GLib (C)

0 commit comments

Comments
 (0)