@@ -8,11 +8,25 @@ ARG OSNICK=bionic
8
8
# ARCH=x64|arm64v8|arm32v7
9
9
ARG ARCH=x64
10
10
11
+ # OS=ubuntu18.04|ubuntu16.04|centos7
12
+ ARG OS=ubuntu18.04
13
+
14
+ ARG CUDA_VER=10.1-cudnn7
15
+
16
+ ARG PACK=0
17
+ ARG TEST=0
18
+
11
19
#----------------------------------------------------------------------------------------------
12
20
FROM redisfab/redis:${REDIS_VER}-${ARCH}-${OSNICK} AS redis
13
- FROM nvidia/cuda:10.1-cudnn7-devel-ubuntu18.04 AS builder
21
+ FROM nvidia/cuda:${CUDA_VER}-devel-${OS} AS builder
22
+
23
+ ARG OSNICK
24
+ ARG OS
25
+ ARG REDIS_VER
26
+ ARG CUDA_VER
27
+
28
+ RUN echo "Building for ${OSNICK} (${OS}) [with Redis ${REDIS_VER}]"
14
29
15
- # ENV DEPS "git ca-certificates wget unzip cmake libgomp1 patchelf coreutils tcl libjemalloc-dev"
16
30
ENV NVIDIA_VISIBLE_DEVICES all
17
31
ENV NVIDIA_DRIVER_CAPABILITIES compute,utility
18
32
@@ -31,24 +45,34 @@ RUN if [ "$DEPS_ARGS" = "" ]; then ./get_deps.sh gpu; else env $DEPS_ARGS ./get_
31
45
32
46
ARG BUILD_ARGS=""
33
47
ADD ./ /build
34
- RUN make -C opt build GPU=1 $BUILD_ARGS SHOW=1
48
+ RUN set -e ;\
49
+ . ./opt/readies/bin/sourced ./profile.d ;\
50
+ make -C opt build GPU=1 $BUILD_ARGS SHOW=1
35
51
36
- ARG PACK=0
37
- ARG TEST=0
52
+ ARG PACK
53
+ ARG TEST
38
54
55
+ RUN mkdir -p bin/artifacts
39
56
RUN if [ "$PACK" = "1" ]; then make -C opt pack GPU=1; fi
40
- RUN if [ "$TEST" = "1" ]; then TEST="" make -C opt test GPU=1 $BUILD_ARGS NO_LFS=1; fi
57
+
58
+ RUN if [ "$TEST" = "1" ]; then TEST= make -C opt test GPU=1 $BUILD_ARGS NO_LFS=1; fi
41
59
42
60
#----------------------------------------------------------------------------------------------
43
- FROM nvidia/cuda:10.1-cudnn7- runtime-ubuntu18.04
61
+ FROM nvidia/cuda:${CUDA_VER}- runtime-${OS}
44
62
45
- RUN set -e; apt-get -qq update; apt-get -q install -y libgomp1
63
+ ARG OS
64
+
65
+ RUN if [ ! -z $(command -v apt-get) ]; then apt-get -qq update; apt-get -q install -y libgomp1; fi
66
+ RUN if [ ! -z $(command -v yum) ]; then yum install -y libgomp; fi
46
67
47
68
ENV REDIS_MODULES /usr/lib/redis/modules
48
69
RUN mkdir -p $REDIS_MODULES/
49
70
50
71
COPY --from=redis /usr/local/ /usr/local/
51
72
COPY --from=builder /build/install-gpu/ $REDIS_MODULES/
73
+
74
+ COPY --from=builder /build/bin/artifacts/ /var/opt/redislabs/artifacts
75
+
52
76
# COPY --from=builder /usr/local/etc/redis/redis.conf /usr/local/etc/redis/
53
77
54
78
WORKDIR /data
0 commit comments