blob: 47e7c5b784c4e9ec50080ba6335f6849d5ca8cc6 [file]
# SGX Docs stage
FROM teaclave/teaclave-build-ubuntu-2004-sgx-2.17.1:0.2.0 AS sgx-docs
WORKDIR /app
RUN (apt update || true) && apt install -y ca-certificates && update-ca-certificates
COPY sgx-sdk-api-docs /app/sgx-sdk-api-docs
RUN . "$HOME/.cargo/env" && cd sgx-sdk-api-docs && cargo doc
RUN mkdir -p /prebuilt_docs && \
cp -r sgx-sdk-api-docs/target/doc /prebuilt_docs/sgx-sdk-docs
# Trustzone Docs stage
FROM teaclave/teaclave-trustzone-emulator-std-expand-memory:latest AS tz-docs
WORKDIR /app
COPY tz-sdk-api-docs /app/tz-sdk-api-docs
RUN . /opt/teaclave/setup/bootstrap_env && \
. /opt/teaclave/environment && \
cd tz-sdk-api-docs && cargo doc
RUN mkdir -p /prebuilt_docs && \
cp -r tz-sdk-api-docs/target/doc /prebuilt_docs/tz-sdk-docs
# Teaclave Docs stage
#FROM teaclave/teaclave-build-ubuntu-2004-sgx-2.17.1:0.2.0 AS teaclave-docs
#WORKDIR /app
# Dependencies stage
FROM node:22-slim AS deps
WORKDIR /app
COPY site/package*.json ./
RUN npm install
# Final stage
FROM node:22-slim AS teaclave-docs-site
COPY --from=deps /app/node_modules /app/node_modules
COPY --from=sgx-docs /prebuilt_docs/sgx-sdk-docs /prebuilt_docs/sgx-sdk-docs
COPY --from=tz-docs /prebuilt_docs/tz-sdk-docs /prebuilt_docs/tz-sdk-docs
ENV PATH="/root/.cargo/bin:${PATH}"
ENV PYTHONPATH="/usr/local/lib/python3.9/dist-packages"
ENV NPM_CONFIG_PREFIX="/app/node_modules"
WORKDIR /app
RUN apt-get update && apt-get install -y \
python3 \
python3-pip \
git \
curl
RUN pip3 install --break-system-packages ghp-import