diff --git a/BattSim.csproj b/BattSim.csproj
index 335c097..354880f 100644
--- a/BattSim.csproj
+++ b/BattSim.csproj
@@ -6,9 +6,6 @@
enable
true
service-worker-assets.js
- true
- true
- true
diff --git a/Dockerfile b/Dockerfile
index ecd65cc..929b4e9 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,5 +1,5 @@
# Build stage
-FROM mcr.microsoft.com/dotnet/sdk:10.0 AS launch
+FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
WORKDIR /src
# Install Python (required for AOT compilation)
@@ -7,28 +7,21 @@ RUN apt-get update && \
apt-get install -y python3 && \
ln -s /usr/bin/python3 /usr/bin/python
-
-# Update workloads and SDK
-RUN dotnet --list-sdks
-RUN dotnet --list-runtimes
-RUN dotnet workload update
-
-# Copy project and solution files
-COPY *.csproj *.sln ./
-
# Install required workloads
RUN dotnet workload install wasm-tools
+# Copy project and solution files
+COPY *.csproj ./
+RUN dotnet restore
+
# Copy the rest of the application
COPY . .
-# Restore dependencies
-RUN dotnet restore
-
-# Publish the app (optional, if you want to test publish output)
-# RUN dotnet publish -c Release -o /app/publish
-
-# Runtime stage: Use the SDK image to run the app
-ENTRYPOINT ["dotnet", "run", "--no-launch-profile", "--urls", "http://0.0.0.0:5000"]
-EXPOSE 5000
+# Publish the app
+RUN dotnet publish -c Release -o /app/publish
+# Runtime stage: Use Nginx to serve static files
+FROM nginx:alpine
+COPY --from=build /app/publish/wwwroot /usr/share/nginx/html
+COPY nginx.conf /etc/nginx/conf.d/default.conf
+EXPOSE 80
diff --git a/docker-compose.yml b/docker-compose.yml
index 017302a..0df73b9 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,10 +1,12 @@
version: '3.8'
services:
- web:
+ wattif:
build:
context: .
dockerfile: Dockerfile
ports:
- - "5000:5000"
+ - "5000:80"
restart: unless-stopped
+ volumes:
+ - ./nginx.conf:/etc/nginx/conf.d/default.conf
diff --git a/nginx.conf b/nginx.conf
new file mode 100644
index 0000000..41bbdf9
--- /dev/null
+++ b/nginx.conf
@@ -0,0 +1,18 @@
+server {
+ listen 80;
+ server_name _;
+
+ root /usr/share/nginx/html;
+ index index.html;
+
+ location / {
+ try_files $uri $uri/ /index.html =404;
+ }
+
+ include /etc/nginx/mime.types;
+ types {
+ application/wasm wasm;
+ application/manifest+json webmanifest;
+ application/octet-stream dll pdb webcil;
+ }
+}