Files
Freman.Sample.Web/README.md

1.6 KiB
Raw Blame History

Freman.Sample.Web Blazor + PostgreSQL (Docker) sample

This repo is a small demo for C# developers (e.g., Unity folks) who are new to web dev.

Prereqs

  • Docker Desktop
  • .NET SDK (matching the repo)
  • (Optional) EF tooling: dotnet-ef
  1. Create a .env file next to compose.yaml: text POSTGRES_PASSWORD=your_local_dev_password

  2. Start everything: powershell docker compose up --build

  3. Open the app, then navigate to Notes (Postgres). Type a note, click Save, refresh the page — it should persist.

Running from Rider (server on host, DB in Docker)

Start just Postgres:

powershell docker compose up postgres

Then run the Freman.Sample.Web project from Rider.

In this mode, the app uses appsettings.Development.json which points to localhost:5432.

Migrations (EF Core)

Install EF CLI once: powershell dotnet tool install --global dotnet-ef

Add a migration:

powershell dotnet ef migrations add InitialCreate --project .\Freman.Sample.Web\Freman.Sample.Web\Freman.Sample.Web.csproj --startup-project .\Freman.Sample.Web\Freman.Sample.Web\Freman.Sample.Web.csproj ` --output-dir Data\Migrations

Apply it: powershell dotnet ef database update --project .\Freman.Sample.Web\Freman.Sample.Web\Freman.Sample.Web.csproj --startup-project .\Freman.Sample.Web\Freman.Sample.Web\Freman.Sample.Web.csproj

Troubleshooting

  • DB auth failed: check .env password matches the connection string in compose.yaml.
  • Port 5432 already in use: stop the other Postgres instance or change the port mapping in compose.yaml.