File tree Expand file tree Collapse file tree 8 files changed +44
-46
lines changed
Expand file tree Collapse file tree 8 files changed +44
-46
lines changed Original file line number Diff line number Diff line change 1- FROM alpine:3.17 AS builder
1+ FROM ubuntu:22.04 AS Builder
22
33ENV OPAMROOT=/opt/ocaml
44
55RUN set -ex; \
66 mkdir -p $OPAMROOT; \
7- adduser -D codewarrior; \
8- chown -R codewarrior:codewarrior /opt/ocaml; \
9- apk update; \
10- apk add --virtual .build-deps \
11- build-base \
12- ocaml-compiler-libs \
13- gmp-dev \
7+ useradd --create-home codewarrior; \
8+ chown codewarrior:codewarrior $OPAMROOT; \
9+ apt-get update; \
10+ apt-get install -y --no-install-recommends \
11+ software-properties-common \
12+ libgmp-dev \
1413 opam \
1514 ;
1615
@@ -31,14 +30,16 @@ RUN set -ex; \
3130 'zarith=1.12' \
3231 ;
3332
34- FROM alpine:3.17
33+ FROM ubuntu:22.04
3534
3635RUN set -ex; \
37- apk add --no-cache \
36+ apt-get update; \
37+ apt-get install -y --no-install-recommends \
3838 gcc \
39- gmp-dev \
40- musl-dev \
41- ;
39+ libc6-dev \
40+ libgmp-dev \
41+ ; \
42+ rm -rf /var/lib/apt/lists/*;
4243
4344COPY --from=builder \
4445 /opt/ocaml/5.0.0/bin/ocamlc.opt \
@@ -51,13 +52,13 @@ COPY --from=builder \
5152 /opt/ocaml/5.0.0/lib/ /opt/ocaml/5.0.0/lib/
5253
5354RUN set -ex; \
54- adduser -D codewarrior; \
55- mkdir /workspace; \
55+ useradd --create-home codewarrior; \
56+ mkdir -p /workspace; \
5657 chown -R codewarrior:codewarrior /workspace;
5758
5859USER codewarrior
5960ENV USER=codewarrior \
6061 PATH=/opt/ocaml/5.0.0/bin:$PATH
6162
6263COPY --chown=codewarrior:codewarrior workspace/. /workspace/
63- WORKDIR /workspace
64+ WORKDIR /workspace
Original file line number Diff line number Diff line change 1- FROM ubuntu:22.04 AS Builder
1+ FROM alpine:3.17 AS builder
22
33ENV OPAMROOT=/opt/ocaml
44
55RUN set -ex; \
66 mkdir -p $OPAMROOT; \
7- useradd --create-home codewarrior; \
8- chown codewarrior:codewarrior $OPAMROOT; \
9- apt-get update; \
10- apt-get install -y --no-install-recommends \
11- software-properties-common \
12- libgmp-dev \
7+ adduser -D codewarrior; \
8+ chown -R codewarrior:codewarrior /opt/ocaml; \
9+ apk update; \
10+ apk add --virtual .build-deps \
11+ build-base \
12+ ocaml-compiler-libs \
13+ gmp-dev \
1314 opam \
1415 ;
1516
@@ -30,16 +31,14 @@ RUN set -ex; \
3031 'zarith=1.12' \
3132 ;
3233
33- FROM ubuntu:22.04
34+ FROM alpine:3.17
3435
3536RUN set -ex; \
36- apt-get update; \
37- apt-get install -y --no-install-recommends \
37+ apk add --no-cache \
3838 gcc \
39- libc6-dev \
40- libgmp-dev \
41- ; \
42- rm -rf /var/lib/apt/lists/*;
39+ gmp-dev \
40+ musl-dev \
41+ ;
4342
4443COPY --from=builder \
4544 /opt/ocaml/5.0.0/bin/ocamlc.opt \
@@ -52,13 +51,13 @@ COPY --from=builder \
5251 /opt/ocaml/5.0.0/lib/ /opt/ocaml/5.0.0/lib/
5352
5453RUN set -ex; \
55- useradd --create-home codewarrior; \
56- mkdir -p /workspace; \
54+ adduser -D codewarrior; \
55+ mkdir /workspace; \
5756 chown -R codewarrior:codewarrior /workspace;
5857
5958USER codewarrior
6059ENV USER=codewarrior \
6160 PATH=/opt/ocaml/5.0.0/bin:$PATH
6261
6362COPY --chown=codewarrior:codewarrior workspace/. /workspace/
64- WORKDIR /workspace
63+ WORKDIR /workspace
Original file line number Diff line number Diff line change 1+ docker build -f DockerfileAlpine -t ocaml:alpine .
Original file line number Diff line number Diff line change 1+ export IMAGE=ocaml:alpine
2+ exec "$(dirname "$0")/run" "$@"
Original file line number Diff line number Diff line change 1- docker build -t ocaml:alpine .
1+ docker build -t ghcr.io/codewars/ ocaml:latest .
Original file line number Diff line number Diff line change 1+ set -eu
2+
3+ if [ -z "${IMAGE:+x}" ]; then
4+ IMAGE=ghcr.io/codewars/ocaml:latest
5+ fi
6+
17W=/workspace
28# Create container
39BUILD="ocamlbuild -quiet -use-ocamlfind cwtest.native"
4- C=$(docker container create --rm -w $W ocaml:alpine sh -c "$BUILD && exec ./cwtest.native")
10+ C=$(docker container create --rm -w $W $IMAGE sh -c "$BUILD && exec ./cwtest.native")
511
612# Copy files
713docker container cp ${1:-examples/basic}/. $C:$W
Load Diff This file was deleted.
Load Diff This file was deleted.
You can’t perform that action at this time.
0 commit comments