- .NET 8.0 SDK: https://dotnet.microsoft.com/download
- PowerShell: https://github.com/powershell/powershell
- Docker with Docker Compose: https://www.docker.com/
Development environment is a personal choice, here are some options:
- JetBrains Rider
- Visual Studio
- Visual Studio Code with following
extensions:
- Ionide F# (
ionide.ionide-fsharp
) - PowerShell (
ms-vscode.powershell
) - Docker (
ms-azuretools.vscode-docker
)
- Ionide F# (
To build the solution and run tests:
./build.ps1
NOTE. Command above is equivalent to
./build.ps1 -Target FullBuild
To completely remove all the intermediate build files:
./build.ps1 Prune
To clean up Docker containers and images, first make sure that the system
is stopped (see DockerCompose.Stop
target below).
Then run command
./build.ps1 Prune.Docker
To run the solution:
./build.ps1 DockerCompose.Start
This will start Docker Compose project and will display combined console logs
from all the components involved. The system will stop when any of the
containers terminates. Use Ctrl+C
to terminate manually.
./build.ps1 DockerCompose.StartDetached
This will run the Docker Compose project in detached mode;
use docker logs
to inspect individual parts.
To stop a system running in the detached mode:
./build.ps1 DockerCompose.Stop