refactor opencode image for better caching
All checks were successful
CI / Build opencode docker images (push) Successful in 2m48s
All checks were successful
CI / Build opencode docker images (push) Successful in 2m48s
This commit is contained in:
@@ -1,5 +1,13 @@
|
|||||||
ARG ALPINE_VERSION=latest
|
ARG ALPINE_VERSION=latest
|
||||||
FROM --platform=$BUILDPLATFORM alpine:${ALPINE_VERSION} AS base
|
FROM --platform=$BUILDPLATFORM alpine:${ALPINE_VERSION} AS base
|
||||||
|
RUN --mount=type=cache,target=/var/cache/apk apk update
|
||||||
|
RUN --mount=type=cache,target=/var/cache/apk apk add rust-analyzer openjdk25-jdk jdtls pipx ripgrep git
|
||||||
|
RUN adduser -D -h /var/lib/opencode opencode
|
||||||
|
RUN mkdir /workspace
|
||||||
|
RUN chown opencode:opencode /workspace
|
||||||
|
USER opencode
|
||||||
|
RUN pipx install pyright
|
||||||
|
USER root
|
||||||
|
|
||||||
ARG TARGETPLATFORM BUILDPLATFORM OPENCODE_VERSION
|
ARG TARGETPLATFORM BUILDPLATFORM OPENCODE_VERSION
|
||||||
|
|
||||||
@@ -10,18 +18,10 @@ FROM base AS builder-linux_amd64
|
|||||||
ADD https://github.com/anomalyco/opencode/releases/download/v${OPENCODE_VERSION}/opencode-linux-x64-musl.tar.gz ./opencode.tgz
|
ADD https://github.com/anomalyco/opencode/releases/download/v${OPENCODE_VERSION}/opencode-linux-x64-musl.tar.gz ./opencode.tgz
|
||||||
|
|
||||||
FROM builder-${TARGETPLATFORM//\//_} AS release
|
FROM builder-${TARGETPLATFORM//\//_} AS release
|
||||||
|
|
||||||
RUN --mount=type=cache,target=/var/cache/apk apk update
|
|
||||||
RUN --mount=type=cache,target=/var/cache/apk apk add rust-analyzer openjdk25-jdk jdtls pipx ripgrep git
|
|
||||||
RUN tar -xvf ./opencode.tgz -C /usr/bin
|
RUN tar -xvf ./opencode.tgz -C /usr/bin
|
||||||
RUN rm opencode.tgz
|
RUN rm opencode.tgz
|
||||||
|
|
||||||
RUN adduser -D -h /var/lib/opencode opencode
|
|
||||||
RUN mkdir /workspace
|
|
||||||
RUN chown opencode:opencode /workspace
|
|
||||||
USER opencode
|
USER opencode
|
||||||
WORKDIR /workspace
|
WORKDIR /workspace
|
||||||
RUN pipx install pyright
|
|
||||||
ENTRYPOINT ["opencode"]
|
ENTRYPOINT ["opencode"]
|
||||||
VOLUME ["/var/lib/opencode", "/workspace"]
|
VOLUME ["/var/lib/opencode", "/workspace"]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user