Skip to content

Commit 5d488bf

Browse files
authored
Release 1.0.0
Release version 1.0.0
2 parents 6731cb9 + d1933fa commit 5d488bf

12 files changed

+435
-30
lines changed

.github/workflows/docker-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ env:
1111
# github.repository as <account>/<repo>
1212
IMAGE_NAME: mnestix-proxy
1313
# Update the version manually
14-
IMAGE_TAG_VERSION: 0.1.0
14+
IMAGE_TAG_VERSION: 1.0.0
1515

1616
jobs:
1717
run-tests:

assets/XitasoLogo.svg

Lines changed: 32 additions & 0 deletions
Loading

assets/XitasoLogoBlack.svg

Lines changed: 32 additions & 0 deletions
Loading

assets/android-chrome-192x192.png

7.81 KB
Loading

compose.dev.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
networks:
2+
mnestix-network:
3+
driver: bridge
4+
name: mnestix-network
5+
6+
services:
7+
mnestix-proxy:
8+
container_name: mnestix-proxy
9+
image: mnestix-proxy:dev
10+
build:
11+
dockerfile: Dockerfile
12+
ports:
13+
- '5065:5065'
14+
15+
mnestix-api:
16+
ports:
17+
- '5064:5064'
18+
19+
aas-environment:
20+
ports:
21+
- '8081:8081'
22+
23+
mongodb:
24+
ports:
25+
- '27017:27017'
26+
27+
aas-discovery:
28+
ports:
29+
- '8082:8081'
30+
31+
aas-registry:
32+
ports:
33+
- '8083:8080'
34+
35+
submodel-registry:
36+
ports:
37+
- '8084:8080'

compose.yml

Lines changed: 7 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@
66
services:
77
mnestix-proxy:
88
container_name: mnestix-proxy
9-
image: mnestix-proxy:0.1.0
10-
build:
11-
dockerfile: Dockerfile
9+
image: mnestix/mnestix-proxy:1.0.0
1210
ports:
1311
- '5065:5065'
1412
environment:
@@ -37,11 +35,9 @@ services:
3735
- mnestix-network
3836

3937
mnestix-api:
40-
image: mnestix/mnestix-api:1.3.2
38+
image: mnestix/mnestix-api:1.3.4
4139
container_name: mnestix-api
4240
profiles: ['', 'backend', 'tests']
43-
ports:
44-
- '5064:5064'
4541
environment:
4642
ServerUrls ServerUrls: 'http://mnestix-proxy:5065/repo/'
4743
# API key authorization
@@ -78,7 +74,7 @@ services:
7874
- mnestix-network
7975

8076
mongodb:
81-
image: mongo:5
77+
image: mongo:8
8278
container_name: mongodb
8379
profiles: ['', 'basyx', 'tests']
8480
environment:
@@ -99,13 +95,11 @@ services:
9995
- mnestix-network
10096

10197
aas-environment:
102-
image: eclipsebasyx/aas-environment:2.0.0-milestone-05
98+
image: eclipsebasyx/aas-environment:2.0.0-milestone-06
10399
container_name: aas-environment
104100
profiles: ['', 'basyx', 'tests']
105101
depends_on:
106102
- mongodb
107-
ports:
108-
- '8081:8081'
109103
environment:
110104
# MongoDb configuration for Basyx Repository
111105
BASYX__BACKEND: MongoDB
@@ -133,7 +127,7 @@ services:
133127
- mnestix-network
134128

135129
aas-discovery:
136-
image: eclipsebasyx/aas-discovery:2.0.0-milestone-05
130+
image: eclipsebasyx/aas-discovery:2.0.0-milestone-06
137131
container_name: aas-discovery
138132
profiles: ['', 'basyx', 'tests']
139133
depends_on:
@@ -161,11 +155,9 @@ services:
161155
- mnestix-network
162156

163157
aas-registry:
164-
image: eclipsebasyx/aas-registry-log-mongodb:2.0.0-milestone-05
158+
image: eclipsebasyx/aas-registry-log-mongodb:2.0.0-milestone-06
165159
container_name: aas-registry
166160
profiles: ['', 'basyx']
167-
ports:
168-
- '8083:8080'
169161
depends_on:
170162
- mongodb
171163
environment:
@@ -181,11 +173,9 @@ services:
181173
- mnestix-network
182174

183175
submodel-registry:
184-
image: eclipsebasyx/submodel-registry-log-mongodb:2.0.0-milestone-05
176+
image: eclipsebasyx/submodel-registry-log-mongodb:2.0.0-milestone-06
185177
container_name: submodel-registry
186178
profiles: ['', 'basyx']
187-
ports:
188-
- '8084:8080'
189179
depends_on:
190180
- mongodb
191181
environment:

wiki/Docker-Compose.md

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
# Docker Compose Setup for mnestix-proxy
2+
3+
This guide explains how to use Docker Compose to run the full Mnestix Proxy stack, including the proxy, API, AAS environment, discovery, registry, and MongoDB.
4+
5+
---
6+
7+
## Compose Files
8+
9+
- **compose.yml**: For production or standard usage. Uses pre-built images.
10+
- **compose.dev.yml**: For development. Builds the `mnestix-proxy` image from your local source.
11+
12+
---
13+
14+
## Prerequisites
15+
16+
- [Docker](https://docs.docker.com/get-docker/) installed
17+
- [Docker Compose](https://docs.docker.com/compose/install/) (or use `docker compose` command with Docker Desktop)
18+
19+
---
20+
21+
## Usage
22+
23+
### 1. Standard Setup
24+
25+
From the project root, run:
26+
27+
```sh
28+
docker compose up
29+
```
30+
31+
This will start all services using pre-built images.
32+
33+
### 2. Development Setup
34+
35+
To build and run the proxy from your local source (using `compose.dev.yml`):
36+
37+
```sh
38+
docker compose -f compose.yml -f compose.dev.yml up --build
39+
```
40+
41+
This will build the `mnestix-proxy` image from your local Dockerfile and start all services. The development compose file also exposes all service ports for easier debugging.
42+
43+
---
44+
45+
## Services Overview
46+
47+
- **mnestix-proxy**: Main reverse proxy gateway (`5065:5065`)
48+
- **mnestix-api**: Backend API service (`5064:5064`)
49+
- **mongodb**: MongoDB database for AAS and discovery services (`27017:27017`)
50+
- **aas-environment**: Eclipse BaSyx AAS environment (repository) (`8081:8081`)
51+
- **aas-discovery**: Eclipse BaSyx AAS discovery service (`8082:8081`)
52+
- **aas-registry**: Eclipse BaSyx AAS registry (`8083:8080`)
53+
- **submodel-registry**: Eclipse BaSyx submodel registry (`8084:8080`)
54+
55+
All services are connected via the `mnestix-network` Docker network.
56+
57+
---
58+
59+
## Accessing Services
60+
61+
- **Proxy**: [http://localhost:5065](http://localhost:5065)
62+
- **API**: [http://localhost:5064](http://localhost:5064)
63+
- **AAS Environment**: [http://localhost:8081](http://localhost:8081)
64+
- **AAS Discovery**: [http://localhost:8082](http://localhost:8082)
65+
- **AAS Registry**: [http://localhost:8083](http://localhost:8083)
66+
- **Submodel Registry**: [http://localhost:8084](http://localhost:8084)
67+
- **MongoDB**: [localhost:27017](http://localhost:27017)
68+
69+
---
70+
71+
## Environment Variables
72+
73+
You can override default settings using environment variables, e.g.:
74+
- `MNESTIX_BACKEND_API_KEY`: API key for secured endpoints
75+
76+
See `compose.yml` and `compose.dev.yml` for all configurable variables.
77+
78+
---
79+
80+
## Stopping the Stack
81+
82+
To stop and remove all containers:
83+
84+
```sh
85+
docker compose down
86+
```
87+
88+
---
89+
90+
## Troubleshooting
91+
92+
- View logs: `docker compose logs`
93+
- Check health status: Services use health checks to ensure readiness.
94+
- Make sure required ports are available and not blocked.
95+
96+
---
97+
98+
## Customization
99+
100+
- Edit `compose.yml` or `compose.dev.yml` to change ports, images, or environment variables.
101+
- Update `mnestix-proxy/appsettings.json` for proxy configuration.
102+
103+
---
104+
105+
## References
106+
107+
- [compose.yml](../compose.yml)
108+
- [compose.dev.yml](../compose.dev.yml)
109+
- [mnestix-proxy/appsettings.json](../mnestix-proxy/appsettings.json)
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# Getting Started with Developing mnestix-proxy
2+
3+
## Prerequisites
4+
5+
Before you start developing with **mnestix-proxy**, ensure you have the following installed:
6+
7+
- **.NET 8 SDK** (required for building and running the project)
8+
- **Git** (for version control)
9+
- **Docker** (optional, for containerized development and testing)
10+
11+
## Project Structure
12+
13+
The main source code is located in the `mnestix-proxy` folder. Key directories and files include:
14+
15+
- `Program.cs` — Application entry point
16+
- `Authentication/` — Authentication logic and middleware
17+
- `Configuration/` — Configuration options and classes
18+
- `Exceptions/` — Custom exception types
19+
- `Middleware/` — Custom ASP.NET Core middleware
20+
- `Services/` — Service implementations and interfaces
21+
- `appsettings.json` / `appsettings.Development.json` — Configuration files
22+
- `.github/workflows/` — CI/CD workflows
23+
24+
## Setup Instructions
25+
26+
1. **Clone the repository:**
27+
```sh
28+
git clone https://github.com/eclipse-mnestix/mnestix-proxy.git
29+
cd mnestix-proxy/mnestix-proxy
30+
```
31+
32+
2. **Install dependencies:**
33+
- Make sure you have the [.NET 8 SDK](https://dotnet.microsoft.com/download/dotnet/8.0) installed.
34+
35+
3. **Configure environment variables:**
36+
- Update `appsettings.Development.json` or `appsettings.json` as needed for your environment.
37+
38+
4. **Run the development server:**
39+
```sh
40+
dotnet run
41+
```
42+
43+
5. **Run tests:**
44+
```sh
45+
dotnet test
46+
```
47+
48+
## Docker Development (Optional)
49+
50+
- Build and run the project using Docker:
51+
```sh
52+
docker build -t mnestix-proxy .
53+
docker run -p 5000:5000 mnestix-proxy
54+
```
55+
- See `.dockerignore` and `docker-compose.yml` (if present) for details.
56+
57+
## Additional Notes
58+
59+
- Use `dotnet restore` if you encounter missing dependencies.
60+
- Pull the latest changes from the main branch before starting new work.
61+
62+
## Useful Links
63+
64+
- [.NET 8 SDK Download](https://dotnet.microsoft.com/download/dotnet/8.0)
65+
- [Visual Studio Code](https://code.visualstudio.com/)
66+
- [JetBrains Rider](https://www.jetbrains.com/rider/)
67+
- [Git Download](https://git-scm.com/)

wiki/Home.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,18 @@
1-
Init page for Mnestix Proxy
1+
<p align="right">
2+
<picture>
3+
<source srcset="https://raw.githubusercontent.com/eclipse-mnestix/mnestix-proxy/main/assets/XitasoLogo.svg" media="(prefers-color-scheme: dark)">
4+
<img src="https://raw.githubusercontent.com/eclipse-mnestix/mnestix-proxy/main/assets/XitasoLogoBlack.svg" width=20%>
5+
</picture>
6+
</p>
7+
<p align="center">
8+
<img src="https://raw.githubusercontent.com/eclipse-mnestix/mnestix-proxy/main/assets/android-chrome-192x192.png" alt="Mnestix Logo">
9+
</p>
10+
<h1 style="text-align: center">Mnestix</h1>
11+
12+
[![Made by XITASO](https://img.shields.io/badge/Made_by_XITASO-005962?style=flat-square)](https://xitaso.com/)
13+
[![MIT License](https://img.shields.io/badge/License-MIT-005962.svg?style=flat-square)](https://choosealicense.com/licenses/mit/)
14+
15+
### Welcome to the Mnestix Community!
16+
17+
**Mnestix Proxy** is an open-source gateway designed to securely and flexibly connect applications with Asset Administration Shell (AAS) data sources. Developed by XITASO, it enables routing of AAS API requests, to AAS repositories, discovery and registry services, supports use cases such as Digital Twins and Digital Product Passports (DPP).
18+

0 commit comments

Comments
 (0)