Files
docker-images/opencode/Dockerfile
Walter Oggioni 966730e966
All checks were successful
CI / Build opencode docker images (push) Successful in 26s
added lombok to jdtls in opencode image
2026-03-13 21:24:42 +08:00

32 lines
1.3 KiB
Docker

ARG ALPINE_VERSION=latest
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
FROM base AS builder-linux_arm64
ADD https://github.com/anomalyco/opencode/releases/download/v${OPENCODE_VERSION}/opencode-linux-arm64-musl.tar.gz ./opencode.tgz
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
FROM builder-${TARGETPLATFORM//\//_} AS release
RUN tar -xvf ./opencode.tgz -C /usr/bin
RUN rm opencode.tgz
ADD --chown=opencode:opencode ./opencode.json /etc/opencode/opencode.json
RUN mkdir -p /usr/lib/opencode/addons
ADD --chmod=644 https://repo1.maven.org/maven2/org/projectlombok/lombok/1.18.44/lombok-1.18.44.jar /usr/lib/opencode/addons/lombok.jar
ENV OPENCODE_CONFIG=/etc/opencode/opencode.json
USER opencode
WORKDIR /workspace
ENTRYPOINT ["opencode"]
VOLUME ["/var/lib/opencode", "/workspace"]