This repository was archived by the owner on May 27, 2026. It is now read-only.
File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Push Lagrange.Milky Docker
2+
3+ on :
4+ push :
5+ branches : [ main ]
6+ paths :
7+ - Lagrange.Codec/**
8+ - Lagrange.Core/**
9+ - Lagrange.Proto/**
10+ - Lagrange.Proto.Generator/**
11+ - Lagrange.Milky/**
12+ pull_request :
13+ branches : [ main ]
14+ paths :
15+ - Lagrange.Codec/**
16+ - Lagrange.Core/**
17+ - Lagrange.Proto/**
18+ - Lagrange.Proto.Generator/**
19+ - Lagrange.Milky/**
20+ workflow_dispatch :
21+
22+ jobs :
23+ build :
24+ runs-on : ubuntu-latest
25+
26+ steps :
27+ - uses : actions/checkout@v4
28+
29+ - name : Set up QEMU
30+ uses : docker/setup-qemu-action@v3
31+
32+ - name : Set up Docker Buildx
33+ uses : docker/setup-buildx-action@v3
34+
35+ - name : Login to Github Registry
36+ uses : docker/login-action@v3
37+ if : github.event_name != 'pull_request'
38+ with :
39+ registry : ghcr.io
40+ username : ${{ github.repository_owner }}
41+ password : ${{ secrets.GITHUB_TOKEN }}
42+
43+ - name : Extract metadata (tags, labels) for Docker
44+ id : meta
45+ uses : docker/metadata-action@v5
46+ with :
47+ images : |
48+ ghcr.io/${{ github.repository_owner }}/lagrange.milky
49+ tags : |
50+ type=edge
51+ type=sha,event=branch
52+ type=ref,event=tag
53+
54+ - name : Build and push
55+ uses : docker/build-push-action@v5
56+ with :
57+ context : .
58+ file : " Lagrange.Milky/Resources/Dockerfile"
59+ push : ${{ github.event_name != 'pull_request' }}
60+ tags : ${{ steps.meta.outputs.tags }}
61+ labels : ${{ steps.meta.outputs.labels }}
62+ platforms : linux/amd64
Original file line number Diff line number Diff line change 1+ FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:9.0-alpine AS build
2+
3+ WORKDIR /root/build
4+ ARG TARGETARCH
5+
6+ COPY --link . /root/build
7+
8+ RUN dotnet publish Lagrange.Milky -p:DebugType="none" -c Release -a $TARGETARCH -o /root/out
9+
10+ # ===
11+
12+ FROM mcr.microsoft.com/dotnet/runtime-deps:9.0-alpine
13+
14+ WORKDIR /app/data
15+
16+ COPY --link --from=tianon/gosu /gosu /usr/local/bin/
17+ COPY --link Lagrange.Milky/Resources/docker-entrypoint.sh /app/bin/docker-entrypoint.sh
18+ RUN chmod +x /app/bin/docker-entrypoint.sh
19+
20+ COPY --link --from=build /root/out /app/bin
21+
22+ ENTRYPOINT ["/app/bin/docker-entrypoint.sh" ]
Original file line number Diff line number Diff line change 1+ #! /bin/sh
2+
3+ USER_ID=${UID:- 0}
4+
5+ if [ " $USER_ID " -ne 0 ]; then
6+ chown -R $USER_ID /app/data
7+ useradd --shell /bin/sh -u $USER_ID -o -c " " -m user
8+ usermod -a -G root user
9+ export HOME=/home/user
10+ exec /usr/sbin/gosu user /app/bin/Lagrange.Milky " $@ "
11+ else
12+ exec /app/bin/Lagrange.Milky " $@ "
13+ fi
You can’t perform that action at this time.
0 commit comments