Skip to content

Commit f692038

Browse files
committed
fix: Dockerfile
1 parent be56db7 commit f692038

File tree

6 files changed

+71
-77
lines changed

6 files changed

+71
-77
lines changed

Dockerfile

Lines changed: 7 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,15 @@
1-
#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
2-
31
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
42
WORKDIR /app
3+
# 将同级目录下的 app 文件夹拷贝到镜像内的 /app 目录
4+
COPY app /app
5+
# 暴露需要的端口
56
EXPOSE 518
67
EXPOSE 1888
78
EXPOSE 503
89

9-
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
10-
WORKDIR /src
11-
12-
COPY ["IoTGateway/IoTGateway.csproj", "IoTGateway/"]
13-
COPY ["IoTGateway.ViewModel/IoTGateway.ViewModel.csproj", "IoTGateway.ViewModel/"]
14-
COPY ["Plugins/Plugin/Plugin.csproj", "Plugins/Plugin/"]
15-
COPY ["IoTGateway.Model/IoTGateway.Model.csproj", "IoTGateway.Model/"]
16-
COPY ["WalkingTec.Mvvm/WalkingTec.Mvvm.Core/WalkingTec.Mvvm.Core.csproj", "WalkingTec.Mvvm/WalkingTec.Mvvm.Core/"]
17-
COPY ["Plugins/PluginInterface/PluginInterface.csproj", "Plugins/PluginInterface/"]
18-
COPY ["IoTGateway.DataAccess/IoTGateway.DataAccess.csproj", "IoTGateway.DataAccess/"]
19-
COPY ["WalkingTec.Mvvm/WalkingTec.Mvvm.TagHelpers.LayUI/WalkingTec.Mvvm.TagHelpers.LayUI.csproj", "WalkingTec.Mvvm/WalkingTec.Mvvm.TagHelpers.LayUI/"]
20-
COPY ["WalkingTec.Mvvm/WalkingTec.Mvvm.Mvc/WalkingTec.Mvvm.Mvc.csproj", "WalkingTec.Mvvm/WalkingTec.Mvvm.Mvc/"]
21-
22-
RUN dotnet restore "IoTGateway/IoTGateway.csproj"
23-
COPY . .
24-
WORKDIR "/src/IoTGateway"
25-
RUN dotnet build "IoTGateway.csproj" -c Release -o /app/build
26-
27-
FROM build AS publish
28-
RUN dotnet publish "IoTGateway.csproj" -c Release -o /app/publish
29-
10+
# 以 base 为基础构建最终镜像
3011
FROM base AS final
31-
WORKDIR /app
32-
COPY drivers /app/drivers/
33-
COPY 3d /app/wwwroot/3d/
34-
COPY --from=publish /app/publish .
35-
12+
# 设置时区为上海
3613
ENV TZ=Asia/Shanghai
37-
ENTRYPOINT ["dotnet", "IoTGateway.dll"]
14+
# 设置容器启动命令,启动 IoTGateway.dll
15+
ENTRYPOINT ["dotnet", "IoTGateway.dll"]

IoTGateway.sln

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IoTGateway.DataAccess", "Io
1111
EndProject
1212
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IoTGateway.ViewModel", "IoTGateway.ViewModel\IoTGateway.ViewModel.csproj", "{CCDF6FBB-258B-4491-B7C0-BC332A436F57}"
1313
EndProject
14-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IoTGateway.Test", "IoTGateway.Test\IoTGateway.Test.csproj", "{AE2BCF6F-BC03-49F9-A715-25B89E718E44}"
15-
EndProject
1614
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Plugins", "Plugins", "{D77F8FC9-420C-4135-9402-1B3FD75DF96F}"
1715
EndProject
1816
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Drivers", "Drivers", "{3F2A7BAD-CB2B-4EA3-9D6E-BA12F97D2E57}"
@@ -85,10 +83,6 @@ Global
8583
{CCDF6FBB-258B-4491-B7C0-BC332A436F57}.Debug|Any CPU.Build.0 = Debug|Any CPU
8684
{CCDF6FBB-258B-4491-B7C0-BC332A436F57}.Release|Any CPU.ActiveCfg = Release|Any CPU
8785
{CCDF6FBB-258B-4491-B7C0-BC332A436F57}.Release|Any CPU.Build.0 = Release|Any CPU
88-
{AE2BCF6F-BC03-49F9-A715-25B89E718E44}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
89-
{AE2BCF6F-BC03-49F9-A715-25B89E718E44}.Debug|Any CPU.Build.0 = Debug|Any CPU
90-
{AE2BCF6F-BC03-49F9-A715-25B89E718E44}.Release|Any CPU.ActiveCfg = Release|Any CPU
91-
{AE2BCF6F-BC03-49F9-A715-25B89E718E44}.Release|Any CPU.Build.0 = Release|Any CPU
9286
{EF819BD4-6479-494F-B2B5-7CF0E480478D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
9387
{EF819BD4-6479-494F-B2B5-7CF0E480478D}.Debug|Any CPU.Build.0 = Debug|Any CPU
9488
{EF819BD4-6479-494F-B2B5-7CF0E480478D}.Release|Any CPU.ActiveCfg = Release|Any CPU

IoTGateway/IoTGateway.csproj

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
<Nullable>disable</Nullable>
1414

1515
<CopyRefAssembliesToPublishDirectory>true</CopyRefAssembliesToPublishDirectory>
16+
<!--<PlatformTarget>x86</PlatformTarget>-->
1617
</PropertyGroup>
1718

1819

@@ -37,7 +38,22 @@
3738
</ItemGroup>
3839

3940
<ItemGroup>
40-
<Folder Include="data\" />
41+
<Folder Include="data\" />
42+
</ItemGroup>
43+
44+
<ItemGroup>
45+
<Content Update="appsettings.json">
46+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
47+
</Content>
48+
<Content Update="nlog.config">
49+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
50+
</Content>
51+
</ItemGroup>
52+
53+
<ItemGroup>
54+
<None Update="data\iotgateway.db">
55+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
56+
</None>
4157
</ItemGroup>
4258
</Project>
4359

IoTGateway/Startup.cs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
using WalkingTec.Mvvm.Core.Support.FileHandlers;
1313
using WalkingTec.Mvvm.Mvc;
1414
using System;
15+
using Microsoft.AspNetCore.Authentication.Cookies;
1516
using MQTTnet.AspNetCore;
1617
using Plugin;
1718

@@ -33,7 +34,7 @@ public void ConfigureServices(IServiceCollection services)
3334
{
3435
services.AddWtmWorkflow(ConfigRoot);
3536
services.AddDistributedMemoryCache();
36-
services.AddWtmSession(3600, ConfigRoot);
37+
services.AddWtmSession(360000, ConfigRoot);
3738
services.AddWtmCrossDomain(ConfigRoot);
3839
services.AddWtmAuthentication(ConfigRoot);
3940
services.AddWtmHttpClient(ConfigRoot);
@@ -54,7 +55,6 @@ public void ConfigureServices(IServiceCollection services)
5455
})
5556
.AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix)
5657
.AddWtmDataAnnotationsLocalization(typeof(Program));
57-
5858
services.AddWtmContext(ConfigRoot, (options)=> {
5959
options.DataPrivileges = DataPrivilegeSettings();
6060
options.CsSelector = CSSelector;
@@ -81,8 +81,11 @@ public void Configure(IApplicationBuilder app, IOptionsMonitor<Configs> configs)
8181
{
8282
IconFontsHelper.GenerateIconFont();
8383

84-
app.UseExceptionHandler(configs.CurrentValue.ErrorHandler);
85-
app.UseStaticFiles();
84+
app.UseExceptionHandler(configs.CurrentValue.ErrorHandler);
85+
app.UseStaticFiles(new StaticFileOptions()
86+
{
87+
ServeUnknownFileTypes = true
88+
});
8689
app.UseWtmStaticFiles();
8790
app.UseRouting();
8891
app.UseWtmMultiLanguages();

IoTGateway/Views/Login/Login.cshtml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@
3636
<body>
3737
<div class="loginBody app-login-back-@bgnumber" style="flex: 1 1 auto !important; ">
3838
<header class="login-header">
39-
<img src="/images/logo.png" alt="" height="48">
39+
<img src="/images/logo.png" alt="" height="48">
40+
<img src="/images/wxgroup.png" alt="" style="float:right" height="150">
4041
</header>
4142
<div class="login-content">
4243
<div class="login-form">

IoTGateway/Views/Shared/_Layout.cshtml

Lines changed: 38 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -2,45 +2,47 @@
22
<html>
33

44
<head>
5-
<meta charset="utf-8">
6-
<title>@ViewData["title"]</title>
7-
<meta name="renderer" content="webkit">
8-
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
9-
<meta name="viewport"
10-
content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
11-
<link rel="stylesheet" href="/layui/css/layui.css" media="all">
12-
<link rel="stylesheet" href="/sitecss/wtm.css">
13-
<link rel="stylesheet" href="/font/iconfont.css">
14-
<link rel="shortcut icon" href="/favicon.ico" />
5+
<meta charset="utf-8">
6+
<title>@ViewData["title"]</title>
7+
<meta name="renderer" content="webkit">
8+
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
9+
<meta name="viewport"
10+
content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
11+
<link rel="stylesheet" href="/layui/css/layui.css" media="all">
12+
<link rel="stylesheet" href="/sitecss/wtm.css">
13+
<link rel="stylesheet" href="/font/iconfont.css">
14+
<link rel="shortcut icon" href="/favicon.ico" />
15+
<script charset="UTF-8" id="LA_COLLECT" src="//sdk.51.la/js-sdk-pro.min.js"></script>
16+
<script>LA.init({id: "JgYX7xZwbO7KjYyL",ck: "JgYX7xZwbO7KjYyL",autoTrack:true,hashMode:true})</script>
1517
</head>
1618

1719
<body>
18-
<div id="LAY_app"></div>
19-
<script src="/jquery.min.js"></script>
20-
<script src="/jquery.cookie.js"></script>
21-
<script src="/echarts/json-fns.js"></script>
22-
<script src="/layui/layui.js"></script>
23-
<script src="/layui/xm-select.js"></script>
24-
<script src="/echarts/echarts.min.js"></script>
25-
<script src="/echarts/chalk.js"></script>
26-
<script src="/echarts/essos.js"></script>
27-
<script src="/echarts/macarons.js"></script>
28-
<script src="/echarts/roma.js"></script>
29-
<script src="/echarts/vintage.js"></script>
30-
<script src="/echarts/walden.js"></script>
31-
<script src="/echarts/westeros.js"></script>
32-
<script src="/echarts/wonderland.js"></script>
33-
<script src="/_js/framework_layui.js?time=@DateTime.Now.Ticks"></script>
34-
<script>
35-
var DONOTUSE_IGNOREHASH = false;
36-
var DONOTUSE_COOKIEPRE = '@ViewData["DONOTUSE_COOKIEPRE"]';
37-
var DONOTUSE_WINDOWGUID = '@Guid.NewGuid().ToString().Replace("-", "")';
38-
layui.config({
39-
base: '/layuiadmin/'
40-
, version: '@DateTime.Now.Ticks'
41-
});
42-
</script>
43-
@RenderBody()
20+
<div id="LAY_app"></div>
21+
<script src="/jquery.min.js"></script>
22+
<script src="/jquery.cookie.js"></script>
23+
<script src="/echarts/json-fns.js"></script>
24+
<script src="/layui/layui.js"></script>
25+
<script src="/layui/xm-select.js"></script>
26+
<script src="/echarts/echarts.min.js"></script>
27+
<script src="/echarts/chalk.js"></script>
28+
<script src="/echarts/essos.js"></script>
29+
<script src="/echarts/macarons.js"></script>
30+
<script src="/echarts/roma.js"></script>
31+
<script src="/echarts/vintage.js"></script>
32+
<script src="/echarts/walden.js"></script>
33+
<script src="/echarts/westeros.js"></script>
34+
<script src="/echarts/wonderland.js"></script>
35+
<script src="/_js/framework_layui.js?time=@DateTime.Now.Ticks"></script>
36+
<script>
37+
var DONOTUSE_IGNOREHASH = false;
38+
var DONOTUSE_COOKIEPRE = '@ViewData["DONOTUSE_COOKIEPRE"]';
39+
var DONOTUSE_WINDOWGUID = '@Guid.NewGuid().ToString().Replace("-", "")';
40+
layui.config({
41+
base: '/layuiadmin/'
42+
, version: '@DateTime.Now.Ticks'
43+
});
44+
</script>
45+
@RenderBody()
4446
</body>
4547

4648
</html>

0 commit comments

Comments
 (0)