26 lines
1.0 KiB
Docker
26 lines
1.0 KiB
Docker
FROM docker.io/library/debian:bookworm-slim
|
|
WORKDIR /woj
|
|
|
|
# Install dependencies & languages: c/cpp/python3/pypy3
|
|
RUN apt-get update && apt-get upgrade -y && apt-get install -y software-properties-common \
|
|
&& apt-get install -y \
|
|
git parallel wget curl \
|
|
autoconf bison cmake flex gperf libnl-route-3-dev libprotobuf-dev libtool m4 make pkg-config protobuf-compiler \
|
|
gcc g++ clang \
|
|
python3 pypy3 \
|
|
&& apt-get clean && rm -rf /var/lib/apt/lists
|
|
# Install golang
|
|
RUN wget https://go.dev/dl/go1.22.1.linux-amd64.tar.gz && rm -rf /usr/local/go && tar -C /usr/local -xzf go1.22.1.linux-amd64.tar.gz && rm go1.22.1.linux-amd64.tar.gz
|
|
# Install Rust
|
|
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
|
# Setup PATH
|
|
ENV PATH=/usr/local/go/bin:/root/.cargo/bin:$PATH
|
|
|
|
# Copy source code
|
|
RUN mkdir -p /woj/framework && mkdir -p /woj/problem
|
|
COPY framework /woj/framework
|
|
|
|
# Build
|
|
RUN cd /woj/framework/template && ./setup.sh
|
|
RUN cd /woj/framework/scripts && ./setup.sh
|