Skip to content

Commit

Permalink
feat: test using docker containers
Browse files Browse the repository at this point in the history
  • Loading branch information
betarixm committed Dec 12, 2023
1 parent 6f7ad95 commit fef8796
Show file tree
Hide file tree
Showing 15 changed files with 50 additions and 6,010 deletions.
24 changes: 21 additions & 3 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,23 +15,41 @@ services:
- MASTER_PORT=50051
depends_on:
- master
volumes:
- ./build/output/0:/output
worker-1:
build:
context: .
dockerfile: docker/worker/Dockerfile
args:
- WORKER_ID=0
- WORKER_ID=1
- MASTER_HOST=master
- MASTER_PORT=50051
depends_on:
- master
volumes:
- ./build/output/1:/output
worker-2:
build:
context: .
dockerfile: docker/worker/Dockerfile
args:
- WORKER_ID=0
- WORKER_ID=2
- MASTER_HOST=master
- MASTER_PORT=50051
depends_on:
- master
- master
volumes:
- ./build/output/2:/output
worker-3:
build:
context: .
dockerfile: docker/worker/Dockerfile
args:
- WORKER_ID=3
- MASTER_HOST=master
- MASTER_PORT=50051
depends_on:
- master
volumes:
- ./build/output/3:/output
2 changes: 1 addition & 1 deletion docker/master/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,4 @@ WORKDIR /app

COPY --from=builder /app/build/master .

ENTRYPOINT ./master ${NUMBER_OF_WORKERS}
ENTRYPOINT time ./master ${NUMBER_OF_WORKERS}
34 changes: 28 additions & 6 deletions docker/worker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,22 +16,44 @@ COPY . .

RUN sbt --batch "compile; assembly"

FROM debian:bookworm-slim as generator

ARG NUMBER_OF_DISKS=2
ENV NUMBER_OF_DISKS=${NUMBER_OF_DISKS}

ARG NUMBER_OF_PARTITIONS=2
ENV NUMBER_OF_PARTITIONS=${NUMBER_OF_PARTITIONS}

ARG NUMBER_OF_RECORDS=340000
ENV NUMBER_OF_RECORDS=${NUMBER_OF_RECORDS}

WORKDIR /app

COPY bin/gensort .

RUN for diskIndex in $(seq 0 $((${NUMBER_OF_DISKS} - 1))); do\
mkdir -p /data/${diskIndex};\
for partitionIndex in $(seq 0 $((${NUMBER_OF_PARTITIONS} - 1))); do ./gensort -a$((${diskIndex} * ${NUMBER_OF_PARTITIONS} * ${NUMBER_OF_RECORDS} + ${partitionIndex} * ${NUMBER_OF_RECORDS})) ${NUMBER_OF_RECORDS}\
${partitionIndex};\
mv ${partitionIndex} /data/${diskIndex}/${partitionIndex};\
done;\
done

FROM amazoncorretto:20 as runner

ARG WORKER_ID
ENV WORKER_ID=${WORKER_ID}

ARG MASTER_HOST
ARG MASTER_PORT

ENV MASTER_HOST=${MASTER_HOST}
ENV MASTER_PORT=${MASTER_PORT}

RUN mkdir -p /data /output
ARG MASTER_PORT
ENV MASTER_PORT=${MASTER_PORT}

COPY docker/worker/data/${WORKER_ID} /data
COPY --from=generator /data /data

WORKDIR /app

COPY --from=builder /app/build/worker .

ENTRYPOINT ./worker ${MASTER_HOST}:${MASTER_PORT} -I /data/0 /data/1 -O /output/
ENTRYPOINT rm -f /output/* && time ./worker ${MASTER_HOST}:${MASTER_PORT} -I /data/0 /data/1 -O /output/
500 changes: 0 additions & 500 deletions docker/worker/data/0/0/1

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/0/0/2

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/0/1/1

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/0/1/2

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/1/0/1

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/1/0/2

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/1/1/1

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/1/1/2

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/2/0/1

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/2/0/2

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/2/1/1

This file was deleted.

500 changes: 0 additions & 500 deletions docker/worker/data/2/1/2

This file was deleted.

0 comments on commit fef8796

Please sign in to comment.