Build Instructions - thomst08/requestrr GitHub Wiki
This guide is here to help those who want to build their own versions or to help create development environments or new containers.
This project runs on dotNet 6, it also uses Node.js, make sure the following things are installed in your development environment:
- dotNet 6 or higher SDK
- Node.js (You will need npm to be working)
Note: You can install npm via brew on mac. On mac you might need to re-install your XCode command line tools. See here.
Before the program can be build, the webapp needs to be build first, follow the steps to build the files.
- Open a terminal into the following folders form the root of the project
Requestrr.WebApi/ClientApp
. - Run the following command to set-up the node environment
npm install
- Run the following command to build the webapp
npm run build
That will build the required files for the next step.
Note: You might see compiling warns from the two commands, these can be ignored. These warning/errors might look like the following:
./src/components/Inputs/MultiDropdown.jsx
Line 29: Expected '!==' and instead saw '!=' eqeqeq
Line 53: No duplicate props allowed react/jsx-no-duplicate-props
./src/views/TvShows.jsx
Line 38: 'Input' is defined but never used no-unused-vars
./src/views/Movies.jsx
Line 38: 'Input' is defined but never used no-unused-vars
Search for the keywords to learn more about each warning.
To ignore, add // eslint-disable-next-line to the line before.
- Open a terminal into the following folder form the root of the project
Requestrr.WebApi
- Publish the files and build the program
dotnet publish -c release -o publish
. This will create apublish
folder with your published files.
Note: Add -r to target a build for a select runtime if needed. An example of this is dotnet publish -c release -o publish -r linux-x64
You are welcome to create your own containers if needed, the following can help you make your own.
- Create your dockerfile, you can use the one in this projects located in the
Requestrr.WebApi
folder or here - Create your image using the following command as a guide:
docker buildx build -t {build tag e.g. thomst08/requestrr:latest} --platform {platform target, must match the build you made in dotNet} .