File size: 1,154 Bytes
621418d aa3c6c6 621418d aa3c6c6 8cf0a10 3445a00 2a91cd9 6a1668e 8204a34 3445a00 a2cf63b 3445a00 621418d ab02238 921b6e1 621418d ab02238 921b6e1 970bd47 5a70a9a 921b6e1 621418d aa3c6c6 621418d aa3c6c6 621418d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# ベースイメージ(Node.jsとpnpmを含む)
FROM node:20
# 作業ディレクトリを設定
WORKDIR /app
COPY . .
# Rustインストール用スクリプトを使う
RUN curl https://sh.rustup.rs -sSf | sh -s -- -y
# パスを通す(cargoを使えるように)
ENV PATH="/root/.cargo/bin:${PATH}"
RUN rustup update stable
RUN curl -L https://github.com/WebAssembly/binaryen/releases/download/version_123/binaryen-version_123-x86_64-linux.tar.gz \
| tar -xz -C /usr/local --strip-components=1
RUN cd /app/rewriter && cargo update
RUN cargo install wasm-bindgen-cli
RUN cargo install wasm-snip
RUN apt-get update && apt-get install -y binaryen
# bash をインストール
RUN apt-get update && apt-get install -y bash
RUN chmod +x rewriter/wasm/build.sh
SHELL ["/bin/bash", "-c"]
# pnpm をグローバルにインストール
RUN npm install -g pnpm
# 依存関係をインストール
RUN pnpm install
RUN pnpm rewriter:build
RUN bash rewriter/wasm/build.sh
# Scramjet 全体をビルド
RUN pnpm build
# ポート1337を開放
EXPOSE 1337
# 開発サーバーを起動(ファイル変更に追従)
CMD ["pnpm", "dev"] |