Skip to content

Latest commit

 

History

History
81 lines (60 loc) · 2.19 KB

Readme.md

File metadata and controls

81 lines (60 loc) · 2.19 KB

cppdev

Bleeding-edge, state-of-the-art, latest and greatest, avant-garde, cutting-edge, pioneering, revolutionary, groundbreaking, innovative, forward-thinking, trailblazing, visionary, leading-edge, next-gen, futuristic, experimental, inventive, ingenious, novel, fresh, modern, advanced, high-tech, sophisticated, refined, evolved, progressive, dynamic, disruptive, unconventional, out-of-the-box, unorthodox, game-changing, paradigm-shifting, transformative, evolutionary, newfangled, modernistic, ultramodern, contemporary, hip, trendy, fashionable and blazingly fast C++2x toolchain and environment 🧙.

  • Literally me

Installation

This container is available on Docker Hub.

For installing it:

docker pull tomcat0x42/cppdev

Usage example

You can use this container as a multi-stage build as follows:

FROM cppdev:latest AS builder

USER cppdev
WORKDIR /home/cppdev/app

COPY --chmod=0755 --chown=cppdev:cppdev . ./

# build deps
RUN xrepo install -y fmt cxxopts gtest benchmark tabulate
RUN xmake build -y

FROM ubuntu:23.04 AS runner

WORKDIR /app

# runtime deps
RUN apt-get update && apt-get install -y \
    libssl3 \
    mawk \
    && rm -rf /var/lib/apt/lists/*


COPY --from=builder \
    /home/cppdev/app/build \
    ./

CI/CD

This repo uses Github Actions for automation of the modification => publishing cycle.