跳转至

EEC User Manual

0.前提

  • 开发机内安装 Docker Desktop

1.如果没有Portainer

解决方案:

用远程管理接口 example:2375

  • 直接启动portainer容器并下载,EEC要联网
docker -H 192.168.1.102:2375 run -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock -v /data portainer/portainer-ce

其中: - -H 为远程管理,由开发机管理 EEC内的docker - 192.168.1.102:2375 替换为实际 [ip]:[port]

2.制作 asp.net core项目

2.1 Dockerfile

# Learn about building .NET container images:
# https://github.com/dotnet/dotnet-docker/blob/main/samples/README.md

# build copies all project files and restores NuGet packages
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:9.0 AS build
ARG TARGETARCH
WORKDIR /source

# Copy project file and restore as distinct layers
COPY --link HSpeedTrendServer/*.csproj HSpeedTrendServer/

# add other dependency project

#COPY --link libfoo/*.csproj libfoo/
#COPY --link libbar/*.csproj libbar/

RUN dotnet restore -a $TARGETARCH HSpeedTrendServer/HSpeedTrendServer.csproj

# Copy source code and publish app
COPY --link HSpeedTrendServer/ HSpeedTrendServer/
#COPY --link libfoo/ libfoo/
#COPY --link libbar/ libbar/


# publish builds and publishes complexapp
FROM build AS publish
WORKDIR /source/HSpeedTrendServer
RUN dotnet publish -a $TARGETARCH --no-restore -o /app


# final is the final runtime stage for running the app

#Other amd64 
#FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/runtime:9.0 AS final


# EEC Platform arm64v8
FROM mcr.microsoft.com/dotnet/aspnet:9.0.4-bookworm-slim-arm64v8

# export port
EXPOSE 8080
EXPOSE 21000/udp

WORKDIR /app

COPY --link --from=publish /app .
USER $APP_UID
ENTRYPOINT ["dotnet", "HSpeedTrendServer.dll"]


其中:

  • HSpeedTrendServer 替换为实际项目名称及路径

2.2 生成Image

cd到 项目目录

docker buildx build -t eec_hspeed:eec-dev --platform=linux/arm64 .

2.3 保存Image

docker save -o eec_hspeed.tar eec_hspeed:eec-dev

3.Docker 命令

  • 查看镜像
docker -H 192.168.1.102:2375 images