This commit is contained in:
Юрий 2024-05-05 09:47:03 +04:00
commit 5b8692cee7
4 changed files with 528 additions and 0 deletions

38
Dockerfile Normal file
View file

@ -0,0 +1,38 @@
FROM ubuntu:22.04
MAINTAINER Yuri <app@shahfil.com>
ARG GTEST_DIR=/usr/local/src/googletest/googletest
# Fix enter timezone issue
ENV TZ=Europe/Samara
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN --mount=target=/var/lib/apt/lists,type=cache,sharing=locked \
--mount=target=/var/cache/apt,type=cache,sharing=locked \
rm -f /etc/apt/apt.conf.d/docker-clean \
&& apt-get update \
&& apt-get -y --no-install-recommends install \
git-core \
sudo \
build-essential \
ca-certificates \
cmake \
valgrind \
libcppunit-dev \
gcc-11 gcc-11-base gcc-11-doc g++-11 \
libstdc++-11-dev libstdc++-11-doc
# Build Google Test
RUN git clone https://github.com/google/googletest.git /usr/local/src/googletest
COPY ./Makefile.gtest ${GTEST_DIR}/make/Makefile.local
RUN cd ${GTEST_DIR}/make \
&& make -f Makefile.local \
&& make -f Makefile.local install
RUN ln -s ${GTEST_DIR}/make/sample1_unittest
# TODO: add Quick test, Boost test, Catch test
WORKDIR /valgrind
# docker build -t shahfil/valgrind:latest .
# docker run -tiv $PWD/path/to/my/files:/valgrind shahfil/valgrind:latest