Skip to content

Commit c2dbca1

Browse files
committed
Build static website in docker
1 parent 34a8036 commit c2dbca1

1 file changed

Lines changed: 22 additions & 4 deletions

File tree

packages/opencode/Dockerfile

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,21 @@
1+
# Build stage for static assets
2+
FROM oven/bun:latest AS static-builder
3+
WORKDIR /app
4+
ARG OPENCODE_COMMIT_HASH
5+
ENV OPENCODE_COMMIT_HASH=${OPENCODE_COMMIT_HASH}
6+
COPY package.json bun.lock ./
7+
COPY patches patches
8+
COPY packages/desktop packages/desktop
9+
COPY packages/ui packages/ui
10+
COPY packages/sdk/js packages/sdk/js
11+
COPY packages/util packages/util
12+
COPY packages/console packages/console
13+
COPY packages/slack packages/slack
14+
COPY packages/script packages/script
15+
COPY packages/opencode/src/cli/cmd/tui/context/theme packages/opencode/src/cli/cmd/tui/context/theme
16+
RUN bun install --ignore-scripts
17+
RUN cd packages/desktop && bun run build
18+
119
FROM alpine AS base
220

321
# Disable the runtime transpiler cache by default inside Docker containers.
@@ -7,12 +25,12 @@ ENV BUN_RUNTIME_TRANSPILER_CACHE_PATH=${BUN_RUNTIME_TRANSPILER_CACHE_PATH}
725
RUN apk add libgcc libstdc++ ripgrep git openssh-client
826

927
FROM base AS build-amd64
10-
COPY dist/shuvcode-linux-x64-baseline-musl/bin/shuvcode /usr/local/bin/shuvcode
11-
COPY static /usr/local/bin/static
28+
COPY packages/opencode/dist/shuvcode-linux-x64-baseline-musl/bin/shuvcode /usr/local/bin/shuvcode
29+
COPY --from=static-builder /app/packages/desktop/dist /usr/local/bin/static
1230

1331
FROM base AS build-arm64
14-
COPY dist/shuvcode-linux-arm64-musl/bin/shuvcode /usr/local/bin/shuvcode
15-
COPY static /usr/local/bin/static
32+
COPY packages/opencode/dist/shuvcode-linux-arm64-musl/bin/shuvcode /usr/local/bin/shuvcode
33+
COPY --from=static-builder /app/packages/desktop/dist /usr/local/bin/static
1634

1735
ARG TARGETARCH
1836
FROM build-${TARGETARCH}

0 commit comments

Comments
 (0)