Project currently uses .NET 8 (Download at Microsoft's page).
On terminal and move to project path:
../CamAI-backend/CamAISolution
Run command to restore dependencies and tools:
dotnet restore
Then run to build the project:
dotnet build
- CamAI-backend
- CamAISolution
- src
- Core.*
- Host.*
- Infrastructure.*
- test
- src
- Infrastructure
- .gitignore
- Directory.Packages.props
- CamAISolution
All version of dependencies are defined in Directory.Packages.props
.
This namespace will implement business logic of the project and won't accept any dependencies or 3rd parties. Includes:
- Domain
- Entites
- Interfaces
- Models
- Utilities
- ...
- Application
- Implements
- Exceptions
- Specifications
- ...
In case we need third party, this namespace will implement code from third parties like EF, Database, Jwt...
It must implement the interfaces that exposed by the Core.Domain.Interfaces
.
Defined endpoint of the project.
- Host.Something.API
- Host.Something.BlazorWeb
- ...
Make sure your Docker Desktop has been started.
In terminal, move to folder that includes Dockerfile (in this project is Host.CamAI.API) then run:
docker build -t <img-name> -f Dockerfile .
When build success run:
docker run --rm -d -e ASPNETCORE_ENVIRONMENT=Development -p <Machine's port>:<Container's port> <img-name>
Note: -e ASPNETCORE_ENVIRONMENT=Development
to run on Development
stage.
Make sure your Docker Desktop has been started.
Create .env
has same folder with docker-compose.yml
, inside .env
will be like:
MS_SQL_PASS=C@maimssqlser2022
MS_SQL_CONN='server=mssqldb;uid=sa;password=C@maimssqlser2022;database=CamAIDatabase;TrustServerCertificate=true'
STAGE=Development
# if you don't want to migration remove this
MIGRATION='--run-migration'
Then use docker-compose up
to start the application.