Dockerfile 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. ARG version=36
  2. FROM fedora:${version}
  3. MAINTAINER gearmand
  4. ARG version
  5. ARG GEARMAN_REPO=https://github.com/gearman/gearmand
  6. LABEL description="Gearman Job Server Image (Fedora ${version})"
  7. LABEL maintainer="Gearmand Developers https://github.com/gearman/gearmand"
  8. LABEL version="https://github.com/gearman/gearmand/tree/master Fedora ${version}"
  9. # Install packages
  10. RUN dnf makecache \
  11. && dnf update -y \
  12. && dnf install -y \
  13. rpm-build \
  14. git \
  15. libtool \
  16. autoconf \
  17. automake \
  18. make \
  19. gettext-devel \
  20. boost-devel \
  21. boost-thread \
  22. chrpath \
  23. gcc-c++ \
  24. gperf \
  25. gperftools-devel \
  26. hiredis-devel \
  27. libevent-devel \
  28. libmemcached-devel \
  29. libpq-devel \
  30. libuuid-devel \
  31. mariadb-connector-c-devel \
  32. memcached \
  33. openssl-devel \
  34. sqlite-devel \
  35. tokyocabinet-devel \
  36. zlib-devel \
  37. python3-sphinx \
  38. && dnf clean all \
  39. && rm -rf /var/cache/yum
  40. # Switch to a non-root user
  41. RUN adduser -M --shell /bin/bash gearman
  42. USER gearman
  43. # Clone the GitHub repository master branch
  44. RUN cd /tmp && git clone --depth 1 --branch master ${GEARMAN_REPO}.git
  45. # Bootstrap, configure, make, and make test
  46. WORKDIR /tmp/gearmand
  47. RUN ./bootstrap.sh -a
  48. RUN ./configure --enable-ssl 2>&1 | tee ./configure.log
  49. RUN make 2>&1 | tee ./build.log
  50. RUN make test 2>&1 | tee ./test.log