container image for cpp fun
Go to file
surtur edc88ff5e4
All checks were successful
continuous-integration/drone/push Build is passing
refactor(dockerfile): consolidate consecutive RUNs
.. to achieve faster builds
2022-03-24 17:56:35 +01:00
hooks initial commit 2021-05-06 19:08:12 +02:00
.drone.yml ci,makefile: bump hadolint to v2.9.3 2022-03-24 17:21:29 +01:00
.hadolint.yaml ci,makefile: bump hadolint to v2.9.3 2022-03-24 17:21:29 +01:00
Dockerfile refactor(dockerfile): consolidate consecutive RUNs 2022-03-24 17:56:35 +01:00
Makefile ci,makefile: bump hadolint to v2.9.3 2022-03-24 17:21:29 +01:00
README.md feat: bump base image to fedora-minimal:35 2022-01-10 01:48:56 +01:00

docker-fedora-cpp

Build Status Docker Image Version (latest by date) Docker Image Version (tag latest semver) Docker Image Size (tag) Docker pulls

This repository provides a Dockerfile to create a container image mainly used for CI testing of C/C++ programs on Fedora.

The image is rebuilt nightly to ensure it always has the latest packages.

development happens on this Gitea instance

What you get

  • updated registry.fedoraproject.org/fedora-minimal:35 image
  • the result of
    microdnf install --nodocs dnf dnf-plugins-core -y && \
    dnf copr enable eddsalkield/iwyu -y && \
    microdnf install --nodocs --setopt install_weak_deps=0 -y \
    git \
    ninja-build \
    make \
    {c,auto}make \
    gcc \
    gcc-c++ \
    libgcc \
    libstdc++-{devel,static} \
    glibc-devel \
    iwyu \
    cryptopp-devel \
    libasan-static \
    liblsan-static \
    libubsan-static \
    libtsan-static \
    binutils \
    lld \
    flex \
    bison \
    openmpi-devel \
    which \
    file \
    grpc-{cli,cpp,devel,plugins} \
    protobuf-c-{devel,compiler} \
    protobuf-compiler \
    cppunit \
    log4cpp-devel \
    json-c-devel \
    capnproto-{devel,libs} \
    libpcap-devel \
    hiredis-devel \
    mongo-c-driver-{devel,libs} \
    boost-{devel,atomic,chrono,date-time,system,program-options,regex,thread} \
    libtool \
    autoconf \
    pkgconf \
    kernel-devel \
    ncurses-{c++-libs,devel,libs,static} \
    numactl-{devel,libs} \
    && dnf copr disable eddsalkield/iwyu \
    && rm -vf /etc/dnf/protected.d/dnf.conf \
    && microdnf remove dnf-plugins-core -y \
    && rpm --nodeps -e dnf \
    && microdnf clean all -y

Purpose

  • testing c/cpp programs in CI without the need to install all of the deps (such as protobuf, capnproto, pcap, boost, etc...) all the time.
    found out that if there's enough deps it can actually take more time to pre-configure the environment than downloading a single image once reusing it for all subsequent CI builds.