build: use ASP.NET runtime for backend images
This commit is contained in:
1 parent
ace42e5da7
commit
2e549b230d
3 files changed
+10
-6
No files matched your search
+7
-3
@@ -63,7 +63,11 @@ publish_aot() {
|
|||||||
publish_aot agent agent/src/Monitor.Agent "$output/agent"
|
publish_aot agent agent/src/Monitor.Agent "$output/agent"
|
||||||
publish_aot probe probe/src/Monitor.Probe "$output/probe"
|
publish_aot probe probe/src/Monitor.Probe "$output/probe"
|
||||||
publish_aot fleet-enroll fleet/tools/fleet-enroll "$output/fleet-enroll"
|
publish_aot fleet-enroll fleet/tools/fleet-enroll "$output/fleet-enroll"
|
||||||
publish_aot backend src/Monitor.Backend "$output/backend"
|
(cd "$root/backend" && dotnet publish src/Monitor.Backend \
|
||||||
|
-c Release --no-self-contained \
|
||||||
|
-p:UseAppHost=false -p:OpenApiGenerateDocuments=false \
|
||||||
|
--artifacts-path "$build_root" \
|
||||||
|
-o "$output/backend")
|
||||||
|
|
||||||
package_node() {
|
package_node() {
|
||||||
local role="$1" stage="$stage_root/$1"
|
local role="$1" stage="$stage_root/$1"
|
||||||
@@ -112,8 +116,8 @@ upload_package() {
|
|||||||
package_node agent
|
package_node agent
|
||||||
package_node probe
|
package_node probe
|
||||||
|
|
||||||
# The .NET runtime-deps image is a multi-arch OCI base. The Containerfile does
|
# The ASP.NET runtime image is multi-arch. The Containerfile does not execute
|
||||||
# not execute target-platform commands, so Buildah can assemble either image.
|
# target-platform commands, so Buildah can assemble either image.
|
||||||
container_context="$root/.release/container/linux-$arch"
|
container_context="$root/.release/container/linux-$arch"
|
||||||
mkdir -p "$container_context/app" "$container_context/data"
|
mkdir -p "$container_context/app" "$container_context/data"
|
||||||
cp -a "$output/backend/." "$container_context/app/"
|
cp -a "$output/backend/." "$container_context/app/"
|
||||||
|
|||||||
+1
-1
@@ -22,7 +22,7 @@ NativeAOT 不能交叉编译到别的操作系统;MIPS 不支持(见 `projec
|
|||||||
|
|
||||||
## Backend 容器
|
## Backend 容器
|
||||||
|
|
||||||
Backend 使用 OCI 标准镜像,通过 `registry.oeo.one/monitor/monitor-backend:<version>` 分发,支持 `linux/amd64` 和 `linux/arm64`。容器基于 .NET 10 `runtime-deps` noble-chiseled-extra 镜像,以非 root 用户运行,在 `8080/tcp` 提供 HTTP 服务;数据库和原始数据统一写入 `/data`。`extra` 变体带 IANA 时区数据,供按时区查询使用。将 `/data` 挂载为持久卷,并在反向代理处配置 HTTPS。
|
Backend 使用 OCI 标准镜像,通过 `registry.oeo.one/monitor/monitor-backend:<version>` 分发,支持 `linux/amd64` 和 `linux/arm64`。容器基于 .NET 10 ASP.NET noble-chiseled-extra 运行时镜像,以非 root 用户运行,在 `8080/tcp` 提供 HTTP 服务;数据库和原始数据统一写入 `/data`。`extra` 变体带 IANA 时区数据,供按时区查询使用。将 `/data` 挂载为持久卷,并在反向代理处配置 HTTPS。
|
||||||
|
|
||||||
在部署目录保存此仓库的 `compose.yaml`,先通过部署平台的环境变量或密钥管理设置 `MONITOR_ADMIN_PASSWORD`(可选设置 `MONITOR_ADMIN_USER`、`MONITOR_VERSION`),然后启动:
|
在部署目录保存此仓库的 `compose.yaml`,先通过部署平台的环境变量或密钥管理设置 `MONITOR_ADMIN_PASSWORD`(可选设置 `MONITOR_ADMIN_USER`、`MONITOR_VERSION`),然后启动:
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
FROM mcr.microsoft.com/dotnet/runtime-deps:10.0-noble-chiseled-extra
|
FROM mcr.microsoft.com/dotnet/aspnet:10.0-noble-chiseled-extra
|
||||||
|
|
||||||
ARG APP_VERSION=unknown
|
ARG APP_VERSION=unknown
|
||||||
LABEL org.opencontainers.image.title="Monitor Backend" \
|
LABEL org.opencontainers.image.title="Monitor Backend" \
|
||||||
@@ -17,4 +17,4 @@ ENV ASPNETCORE_HTTP_PORTS=8080 \
|
|||||||
USER 1654:1654
|
USER 1654:1654
|
||||||
VOLUME ["/data"]
|
VOLUME ["/data"]
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
ENTRYPOINT ["/app/monitor-backend"]
|
ENTRYPOINT ["dotnet", "/app/monitor-backend.dll"]
|
||||||
Reference in new issue
Block a user