diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2019-11-30 03:58:18 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2019-12-01 05:23:11 +0300 |
commit | 21c137302332f969eae34b407ad298b03ff16497 (patch) | |
tree | 1bd4937973c1db62c351b74d8c7c6c01ccd5cd4f | |
parent | initial commit (diff) | |
download | math-server-21c137302332f969eae34b407ad298b03ff16497.tar.gz math-server-21c137302332f969eae34b407ad298b03ff16497.zip |
add Docker files
-rw-r--r-- | client/Dockerfile | 30 | ||||
-rw-r--r-- | docker-compose.yml | 18 | ||||
-rw-r--r-- | server/Dockerfile | 29 |
3 files changed, 77 insertions, 0 deletions
diff --git a/client/Dockerfile b/client/Dockerfile new file mode 100644 index 0000000..b60e96b --- /dev/null +++ b/client/Dockerfile @@ -0,0 +1,30 @@ +# To build, run from the top-level directory: +# docker build -f client/Dockerfile -t egortensin/math-client . + +FROM debian + +LABEL maintainer="Egor Tensin <Egor.Tensin@gmail.com>" + +# Don't prompt: +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update -yq && apt-get dist-upgrade -yq + +RUN apt-get install -yq build-essential cmake libboost-filesystem-dev libboost-program-options-dev libboost-test-dev + +COPY [".", "/tmp/src/"] + +WORKDIR /tmp/build + +RUN cmake -G "Unix Makefiles" \ + -D CMAKE_BUILD_TYPE=RelWithDebInfo \ + -D ENABLE_TESTS=ON \ + -D USE_STATIC_RUNTIME=OFF \ + -D CMAKE_CXX_STANDARD_LIBRARIES="-lpthread" \ + /tmp/src && \ + cmake --build test && \ + ./test/unit_tests/unit_tests --log_level=all && \ + cmake --build client + +ENTRYPOINT ["./client/client"] +CMD ["-c", "2 * 2"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..94754dd --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,18 @@ +version: '3' +services: + server: + build: + context: . + dockerfile: server/Dockerfile + expose: + - 18000 + image: egortensin/math-server + ports: + - 18000:18000 + restart: always + client: + build: + context: . + dockerfile: client/Dockerfile + entrypoint: ["/tmp/build/client/client", "-H", "server"] + image: egortensin/math-client diff --git a/server/Dockerfile b/server/Dockerfile new file mode 100644 index 0000000..8b53b9e --- /dev/null +++ b/server/Dockerfile @@ -0,0 +1,29 @@ +# To build, run from the top-level directory: +# docker build -f server/Dockerfile -t egortensin/math-server . + +FROM debian + +LABEL maintainer="Egor Tensin <Egor.Tensin@gmail.com>" + +# Don't prompt: +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update -yq && apt-get dist-upgrade -yq + +RUN apt-get install -yq build-essential cmake libboost-filesystem-dev libboost-program-options-dev libboost-test-dev + +COPY [".", "/tmp/src/"] + +WORKDIR /tmp/build + +RUN cmake -G "Unix Makefiles" \ + -D CMAKE_BUILD_TYPE=Release \ + -D ENABLE_TESTS=ON \ + -D USE_STATIC_RUNTIME=OFF \ + -D CMAKE_CXX_STANDARD_LIBRARIES="-lpthread" \ + /tmp/src && \ + cmake --build test && \ + ./test/unit_tests/unit_tests --log_level=all && \ + cmake --build server + +CMD ["./server/server"] |