https://github.com/avlo/superconductor
Nostr Relay - Java/Spring/WebSocketSession Implementation
https://github.com/avlo/superconductor
Last synced: about 1 month ago
JSON representation
Nostr Relay - Java/Spring/WebSocketSession Implementation
- Host: GitHub
- URL: https://github.com/avlo/superconductor
- Owner: avlo
- License: mit
- Created: 2023-11-21T17:29:56.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-05-18T01:32:23.000Z (11 months ago)
- Last Synced: 2024-05-18T18:52:42.721Z (11 months ago)
- Language: Java
- Homepage:
- Size: 235 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-nostr - SuperConductor - Java Nostr-Relay Framework & Web Application. Java 20, Spring WebSocketSession 3.2.2, Spring Boot 3.2.4, atop [nostr-java library](https://github.com/tcheeric/nostr-java). Simple. Clean. OO. (Relays / Implementations)
README
```java
███████╗██╗ ██╗██████╗ ███████╗██████╗ ██████╗ ██████╗ ███╗ ██╗██████╗ ██╗ ██╗ ██████╗████████╗ ██████╗ ██████╗
██╔════╝██║ ██║██╔══██╗██╔════╝██╔══██╗██╔════╝██╔═══██╗████╗ ██║██╔══██╗██║ ██║██╔════╝╚══██╔══╝██╔═══██╗██╔══██╗
███████╗██║ ██║██████╔╝█████╗ ██████╔╝██║ ██║ ██║██╔██╗ ██║██║ ██║██║ ██║██║ ██║ ██║ ██║██████╔╝
╚════██║██║ ██║██╔═══╝ ██╔══╝ ██╔══██╗██║ ██║ ██║██║╚██╗██║██║ ██║██║ ██║██║ ██║ ██║ ██║██╔══██╗
███████║╚██████╔╝██║ ███████╗██║ ██║╚██████╗╚██████╔╝██║ ╚████║██████╔╝╚██████╔╝╚██████╗ ██║ ╚██████╔╝██║ ██║
╚══════╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
```
# Java Nostr-Relay Framework & Web Application----
### Normal/Production Mode Instructions:
#### Confirm docker requirements$ docker --version
> Docker version 27.5.0
$ docker compose version
> Docker Compose version v2.32.4(Download links for the above)
- [Docker](https://hub.docker.com/_/docker) 27.5.0
- [Docker Compose](https://docs.docker.com/compose/install/) v2.32.4_(note: Confirmed compatible with Docker 27.0.3 and Docker Compose version v2.28.1 or higher. Earlier versions are at the liability of the developer/administrator)_
----
#### Download Superconductor Docker Image from [hub.docker](https://hub.docker.com/repository/docker/avlo/superconductor-app/tags)
$ docker pull avlo/superconductor:1.11.0----
#### Configure SuperConductor security level, 3 options:
Highest | SSL Certificate (WSS/HTTPS)
-
Obtain an SSL certificate -
Install the certificate - Download application-prod_wss.properties file & configure SSL settings
- Download docker-compose-prod_wss.yml file (and optionally edit relevant parameters as applicable)
Medium | Self-Signed Certificate (WSS/HTTPS)
-
Create a Self-Signed Certificate -
Install the certificate - Download application-prod_wss.properties file & configure SSL settings
- Download docker-compose-prod_wss.yml file (and optionally edit relevant parameters as applicable)
Lowest | Non-secure / Non-encrypted (WS/HTTP)
- Security-related configuration(s) not required
- Download docker-compose-prod_ws.yml file (and optionally edit relevant parameters as applicable)
----
#### Run SuperConductor
WSS/HTTPS
run without logging:
docker compose -f docker-compose-prod_wss.yml up
run with container logging displayed to console:
docker compose -f docker-compose-prod_wss.yml up --abort-on-container-failure --attach-dependencies
run with docker logging displayed to console:
docker compose -f docker-compose-prod_wss.yml up -d && dcls | grep 'superconductor-app' | awk '{print $1}' | xargs docker logs -f
WS/HTTP
run without logging:
docker compose -f docker-compose-prod_ws.yml up
run with container logging displayed to console:
docker compose -f docker-compose-prod_ws.yml up --abort-on-container-failure --attach-dependencies
run with docker logging displayed to console:
docker compose -f docker-compose-prod_ws.yml up -d && dcls | grep 'superconductor-app' | awk '{print $1}' | xargs docker logs -f
----
##### Stop SuperConductor
WSS/HTTPS
docker compose -f docker-compose-prod_wss.yml stop superconductor superconductor-db
WS/HTTP
docker compose -f docker-compose-prod_ws.yml stop superconductor superconductor-db
----
##### Remove SuperConductor docker containers
WSS/HTTPS
docker compose -f docker-compose-prod_wss.yml down --remove-orphans
WS/HTTP
docker compose -f docker-compose-prod_ws.yml down --remove-orphans
#### [Development Mode Instructions](DEVELOPMENT.md)