# syntax=docker/dockerfile:1.25@sha256:0adf442eae370b6087e08edc7c50b552d80ddf261576f4ebd6421006b2461f12 FROM alpine:3.24@sha256:28bd5fe8b56d1bd048e5babf5b10710ebe0bae67db86916198a6eec434943f8b AS cli ARG TARGETPLATFORM WORKDIR /app RUN apk add --no-cache ca-certificates COPY ${TARGETPLATFORM}/composia /usr/local/bin/composia USER 65532:65532 ENTRYPOINT ["/usr/local/bin/composia"] CMD ["--help"] FROM alpine:3.24@sha256:28bd5fe8b56d1bd048e5babf5b10710ebe0bae67db86916198a6eec434943f8b AS controller ARG TARGETPLATFORM WORKDIR /app RUN apk add --no-cache ca-certificates git tini COPY ${TARGETPLATFORM}/composia-controller /usr/local/bin/composia-controller USER 65532:65532 ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/composia-controller"] CMD ["-config", "/app/config.yaml"] FROM alpine:3.24@sha256:28bd5fe8b56d1bd048e5babf5b10710ebe0bae67db86916198a6eec434943f8b AS agent ARG TARGETPLATFORM WORKDIR /app RUN apk add --no-cache ca-certificates docker-cli docker-cli-buildx docker-cli-compose git tini COPY ${TARGETPLATFORM}/composia-agent /usr/local/bin/composia-agent USER 65532:65532 ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/composia-agent"] CMD ["-config", "/app/config.yaml"]