blob: f633a55cc968050630758a87343911a826c39717 [file] [log] [blame]
Earl Lee2e463fb2025-04-17 11:22:22 -07001FROM ghcr.io/astral-sh/uv:python3.11-alpine
2
3RUN apk add bash git make jq sqlite gcc musl-dev linux-headers npm nodejs go github-cli ripgrep fzf
4
5ENV GOTOOLCHAIN=auto
6ENV GOPATH=/go
7ENV PATH="$GOPATH/bin:$PATH"
8
9RUN go install golang.org/x/tools/cmd/goimports@latest
10RUN go install golang.org/x/tools/gopls@latest
11RUN go install mvdan.cc/gofumpt@latest
12
David Crawshawbe10fa92025-04-18 01:16:00 -070013RUN mkdir -p /root/.cache/sketch/webui
14
Earl Lee2e463fb2025-04-17 11:22:22 -070015RUN apk add go || true
16
David Crawshawbe10fa92025-04-18 01:16:00 -070017# Install Python requirements and DVC
Earl Lee2e463fb2025-04-17 11:22:22 -070018RUN uv pip install --system dvc || true
19
David Crawshawbe10fa92025-04-18 01:16:00 -070020# Install any additional Python dependencies if present
21RUN if [ -f requirements.txt ]; then uv pip install --system -r requirements.txt || true; fi
Earl Lee2e463fb2025-04-17 11:22:22 -070022
23ARG GIT_USER_EMAIL
24ARG GIT_USER_NAME
25
26RUN git config --global user.email "$GIT_USER_EMAIL" && \
27 git config --global user.name "$GIT_USER_NAME"
28
David Crawshawbe10fa92025-04-18 01:16:00 -070029LABEL sketch_context="cae736ee4f2f50e5bdf62697f39cba09beb8ae47c241c3db73df424f6fc03625"
Earl Lee2e463fb2025-04-17 11:22:22 -070030COPY . /app
31
32WORKDIR /app
33RUN if [ -f go.mod ]; then go mod download; fi
34
35CMD ["/bin/sketch"]