The SITMUN Administration Application is a web-based application built using TypeScript, JavaScript, npm, and Angular.
Environments:
src/environments/environment.ts
)src/environments/environment.testdeployment.ts
) src/environments/environment.prod.ts
) Variables:
production
: Specifies if the environment is a production or a development enviroment. The default value is false
.apiBaseURL
: Specifies the base URL for the SITMUN Backend used by the aplication. The default value is http://localhost:8080
. In the development environment points at https://sitmun-backend-core.herokuapp.com
.The application is containerized using Docker, as defined in the Dockerfile. The Dockerfile is divided into two stages:
/usr/share/nginx/html/
directory.The Dockerfile for the SITMUN Administration Application takes three arguments during the build stage:
GITHUB_TOKEN
: A personal access token from GitHub used to authenticate with GitHub’s package registry when downloading dependencies.BASE_HREF
: Specifies the base URL for the application, used by Angular for routing.CONFIGURATION
: Specifies the build configuration for the Angular application (i.e. testdeployment
and prod
).To build the Docker image for the SITMUN Administration Application, use the docker build
command.
This command includes the image name and any necessary build arguments.
Example command to build the Docker image:
docker build -t sitmun-admin-app --build-arg GITHUB_TOKEN=your_github_token --build-arg BASE_HREF=/ --build-arg CONFIGURATION=testdeployment .
Replace your_github_token
with your actual GitHub token. Adjust the BASE_HREF
and CONFIGURATION
as needed.
To start the application, run the following command in the terminal:
docker run -p 80:80 sitmun-admin-app
This command will start the SITMUN Administration Application and map port 80 in the container to port 80 on the host machine. The application should now be accessible at http://localhost on your machine.
To deploy the SITMUN Administration Application using Docker Compose, create a `docker-compose.yml file that defines the services for your application.
docker-compose.yml
file in the root directory of your project. docker-compose.yml
file.
This service should use the Docker image built from the Dockerfile
, specify the ports to expose, and include any necessary environment variables or build arguments.version: '3.8'
services:
sitmun-admin-app:
build:
context: .
dockerfile: Dockerfile
args:
GITHUB_TOKEN: your_github_token
BASE_HREF: /
CONFIGURATION: testdeployment
ports:
- "80:80"
Replace your_github_token
with your actual GitHub token. Adjust the BASE_HREF
and CONFIGURATION
as needed.
To start the application, run the following command in the terminal:
docker-compose up
This command will start the SITMUN Administration Application and map port 80 in the container to port 80 on the host machine. The application should now be accessible at http://localhost on your machine.
A development container (or dev container for short) allows you to use a container as a full-featured development environment.
The provided devcontainer file uses mcr.microsoft.com/devcontainers/universal:2
and installs node 12.1.1.
{
"image": "mcr.microsoft.com/devcontainers/universal:2",
"features": {
},
"postCreateCommand": "bash -i -c 'nvm install 12.11.1'"
}
The development for the SITMUN Administration Application takes three arguments during the build stage:
GITHUB_TOKEN
: A personal access token from GitHub used to authenticate with GitHub’s package registry when downloading dependencies.BASE_HREF
: Specifies the base URL for the application, used by Angular for routing.CONFIGURATION
: Specifies the build configuration for the Angular application (i.e. testdeployment
and prod
).To build the application, run the following command in the terminal:
npm set //npm.pkg.github.com/:_authToken $our_github_token
npm ci
npm run build -- --configuration=testdeployment --baseHref=/
Replace your_github_token
with your actual GitHub token. Adjust the BASE_HREF
and CONFIGURATION
as needed.
These commands will build the application. The output will be available in dist/admin-app
.