Skip to content
Merged

Nexus #356

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
4ec75c5
updating README and helping nexus run as well as a number of jpro fix…
jlgrock Mar 18, 2025
25dbf55
Fix some configuration to build and run Komet via JPro using docker
besidev Mar 26, 2025
01e8e79
Reverse nginx proxy configuration for `nexus` and `komet` services
besidev Mar 26, 2025
47b27c3
Merge pull request #2 from besidev/fix-docker-jpro-run
jlgrock Mar 29, 2025
551e9ef
adjusting nginx file to work in docker compose
jlgrock Mar 29, 2025
5a3a669
Provide nginx proxy configuration for `komet` service running with JP…
besidev Apr 1, 2025
8111ced
Configure a default `users.ini` file required when running Komet on t…
besidev Apr 1, 2025
6d8325b
Merge pull request #3 from besidev/fix2-docker-jpro-run
jlgrock Apr 1, 2025
84a4b8d
adjusting to use maven wrapper
jlgrock Mar 31, 2025
f2ce08e
updates to use path based routing for komet web
jlgrock Apr 2, 2025
a6c6c60
increasing font size
jlgrock Apr 2, 2025
d6d217f
updating some language and formatting on README
jlgrock Apr 3, 2025
2bae475
Feature/finished/fixed null pointer for submit button enable disable …
swaroopsalvi Mar 19, 2025
e92e266
Feature/finished/jpro 109 fix exporting a file prompts the user to en…
besidev Mar 19, 2025
27b3d8e
Change to run reasoner (#328)
emays Mar 19, 2025
a42e77f
Feature/finished/iia 1130 (#329)
dholubek Mar 20, 2025
4c92771
Feature/finished/iia 1648 data on the left side of semantic window re…
swaroopsalvi Mar 20, 2025
170ddc4
Feature/finished/iia 1649 bugfix property bump genedit (#331)
dholubek Mar 20, 2025
5862f50
Feature/finished/iia 1471 component default value (#333)
dukke Mar 21, 2025
51e62d7
Better fix to submit and show uncommmitted transactions.
swaroopsalvi Mar 20, 2025
b4cf760
Removed unnecessary code
swaroopsalvi Mar 21, 2025
36e2fb4
Feature/finished/iia 1417 new semantic from pattern window (#334)
dholubek Mar 21, 2025
edc4473
Feature/finished/iia 1579 semantic title (#336)
dholubek Mar 21, 2025
0e76369
Feature/finished/jpro 111 fix npe in popover ocurring randomly on sho…
besidev Mar 24, 2025
a0ec4e7
Feature/finished/iia 1408 new semantic no selection made (#338)
dholubek Mar 24, 2025
f2f3917
Update version to start feature: IIA-1589-concept-pattern-toggle
bhharsh13 Mar 24, 2025
a5438f7
IIA-1484 Create Properties Panel Page to Add Reference Component When…
bhharsh13 Mar 25, 2025
796238e
Fixed Concepts Patterns toggle on double click
bhharsh13 Mar 25, 2025
9965946
Update version to finish feature: IIA-1589-concept-pattern-toggle
bhharsh13 Mar 25, 2025
03adcf1
moved the code to generic method
bhharsh13 Mar 25, 2025
7edc023
Feature/finished/iia-1467 iia-1468 iia-1469 iia-1670 placeholder (#340)
dukke Mar 26, 2025
6969cb7
IIA-1590 - Clear function implementation for Next gen search pane (#339)
bhharsh13 Mar 26, 2025
02966b7
Feature/finished/iia 1646 correct image check (#343)
dukke Mar 26, 2025
1887bb2
Update version to start feature: IIA-1471-Uncomment-code
dukke Mar 26, 2025
74c72b8
Feature/IIA-1471: Uncomment commented out code
dukke Mar 26, 2025
5cb0aad
Update version to finish feature: IIA-1471-Uncomment-code
dukke Mar 26, 2025
bf1584b
Feature/IIA-1471: adding spaces in appropriate places
dukke Mar 26, 2025
0a862a6
Feature/finished/iia 1130 default values (#344)
dholubek Mar 27, 2025
4698de0
Feature/finished/jpro 106 implement show more show less for other nam…
indritbeqiri Mar 27, 2025
00bca00
Feature/finished/jpro 118 standardize semantic window backgrounds rem…
besidev Mar 27, 2025
1acebc0
Feature/finished/iia 1645 reordering list submit (#347)
dukke Mar 28, 2025
4c52da8
Feature/iia 1579 semantic title (#348)
dholubek Mar 28, 2025
55cd24c
Feature/finished/IIA-1655 AND IIA-1687 AND IIA-1626: set reordering …
dukke Mar 28, 2025
1649d6c
Feature/finished/iia 1684 component integer min value (#351)
dukke Apr 1, 2025
6b06c0c
Update release version: 1.49.0
ikmdevops Apr 3, 2025
1331f1c
Update development version: 1.50.0-SNAPSHOT
ikmdevops Apr 3, 2025
e0ee056
Merge branch 'main' into nexus
jlgrock Apr 3, 2025
17aca65
Merge branch 'main' into nexus
dholubek Apr 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
README.md
**/.git
224 changes: 122 additions & 102 deletions README.md

Large diffs are not rendered by default.

18 changes: 8 additions & 10 deletions application/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -535,16 +535,6 @@
<releasePlatform>linux</releasePlatform> <!-- includes linux x64 builds -->
<releasePlatform>linux-aarch64</releasePlatform> <!-- includes linux aarch64 builds -->
</releasePlatforms>
<jproReleaseFiles>
<JProReleaseFile>
<inputFile>${project.basedir}/../docker/Dockerfile</inputFile>
<outputFile>/</outputFile>
</JProReleaseFile>
<JProReleaseFile>
<inputFile>${project.basedir}/../docker/docker-compose.yml</inputFile>
<outputFile>/</outputFile>
</JProReleaseFile>
</jproReleaseFiles>
<JVMArgs>
<JVMArg>-Xmx16g</JVMArg>
<JVMArg>--add-opens</JVMArg>
Expand All @@ -556,6 +546,14 @@
<JVMArg>-Djava.util.concurrent.ForkJoinPool.common.exceptionHandler=dev.ikm.tinkar.common.alert.UncaughtExceptionAlertStreamer</JVMArg>
</JVMArgs>
</configuration>
<executions>
<execution>
<goals>
<goal>release</goal>
</goals>
<phase>package</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
Expand Down
File renamed without changes
File renamed without changes
103 changes: 103 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
services:
nexus:
image: sonatype/nexus3
container_name: nexus
volumes:
- nexus-data:/nexus-data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8081/"]
interval: 30s
timeout: 10s
retries: 3
networks:
- rapidenv
restart: unless-stopped
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"

gitea:
image: gitea/gitea:latest
container_name: gitea
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=sqlite3
- GITEA__database__PATH=/data/gitea/gitea.db
- GITEA__security__INSTALL_LOCK=true
- GITEA__security__SECRET_KEY=your_secret_key
- GITEA__server__DOMAIN=localhost
- GITEA__server__ROOT_URL=http://localhost/git/
- GITEA__admin__USER=admin
- GITEA__admin__PASSWORD=admin
- GITEA__admin__EMAIL=admin@example.com
ports:
- "3000:3000"
- "2222:22"
volumes:
- gitea_data:/data
networks:
- rapidenv
restart: always

komet:
build:
context: .
dockerfile: docker/Dockerfile-komet-web
container_name: komet
volumes:
- ~/Solor:/root/Solor
- ./docker/komet-data/users.ini:/root/Solor/users.ini:ro
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/status/alive"]
interval: 30s
timeout: 10s
retries: 3
networks:
- rapidenv
restart: unless-stopped
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"

nginx:
build:
context: .
dockerfile: docker/Dockerfile-nginx
container_name: nginx
ports:
- "80:80"
volumes:
- ./docker/nginx.conf:/etc/nginx/nginx.conf:ro
- ./docker/nginx-logs:/var/log/nginx
depends_on:
- nexus
- komet
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80/"]
interval: 30s
timeout: 10s
retries: 3
networks:
- rapidenv
restart: always
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"

volumes:
nexus-data:
komet-data:
nginx-logs:
driver: local
gitea_data:

networks:
rapidenv:
driver: bridge
13 changes: 0 additions & 13 deletions docker/Dockerfile

This file was deleted.

29 changes: 29 additions & 0 deletions docker/Dockerfile-komet-web
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
FROM csanchez/maven:3-azulzulu-23-alpine AS builder

COPY .. /komet/

WORKDIR /komet/

RUN ls /komet/
RUN ./mvnw clean install -Dmaven.javadoc.skip=true -Dmaven.test.skip=true
RUN ./mvnw clean -f application -Pjpro jpro:release

FROM azul/zulu-openjdk-alpine:23-latest

# Update the package list and install bash (for script compatibility)
RUN apk update && apk add --no-cache --upgrade bash

# Install the glibc compatibility library and GTK+ 3.0 required for JPro applications
RUN apk add --no-cache libc6-compat gtk+3.0

# Copy the JPro application to the image
COPY --from=builder /komet/application/target/komet-jpro.zip /komet-jpro.zip

# Unzip the JPro application
RUN unzip /komet-jpro.zip -d /jproserver/

# Copy the different default page in, which allows for proxy paths
WORKDIR /jproserver/komet-jpro/

# Start the JPro server
CMD (cd jproserver/komet-jpro/; ./bin/restart.sh)
4 changes: 4 additions & 0 deletions docker/Dockerfile-nginx
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
FROM nginx:1.26.3

COPY docker/index.html /usr/share/nginx/html/index.html
COPY docker/nginx.conf /etc/nginx/nginx.conf
8 changes: 0 additions & 8 deletions docker/docker-compose.yml

This file was deleted.

61 changes: 61 additions & 0 deletions docker/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Development Links</title>
<style>
body {
font-family: Arial, sans-serif;
font-size: 32px;
line-height: 1.6;
background-color: #f4f4f4;
color: #333;
margin: 0;
padding: 0;
}

h1 {
background-color: #333;
color: #fff;
padding: 10px 0;
text-align: center;
margin: 0;
}

ul {
list-style-type: none;
padding: 0;
}

li {
background-color: #fff;
margin: 10px 0;
padding: 10px;
border: 1px solid #ddd;
border-radius: 5px;
}

a {
color: #007bff;
text-decoration: none;
}

a:hover {
text-decoration: underline;
}
</style>
</head>
<body>
<h1>Development Links</h1>
<ul>
<li><a href="/git/">Gitea</a> - a standalone git repository where you can develop your code, data, or extensions.
This also can act as an external database to Komet. Default administrative login is
(username: "admin", password: "admin"), but by default, you can register a different user from the UI.</li>
<li><a href="/nexus/">Nexus</a> - a maven repository, where you can publish your komet data files for sharing.
Default login is (username: "admin", password: "admin").</li>
<li><a href="/komet/">Komet Web</a> - the web version of komet, which allows you to access and modify data.
Default login is (username: kuser, password: kuser123).</li>
</ul>
</body>
</html>
3 changes: 3 additions & 0 deletions docker/komet-data/users.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Define users and passwords, roles
[users]
kuser = kuser123, user
106 changes: 106 additions & 0 deletions docker/nginx.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
events {
worker_connections 1024;
}

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log debug;

sendfile on;
keepalive_timeout 65;

map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m inactive=60m;

# Common proxy settings
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port 80;
proxy_buffering off;
proxy_read_timeout 86400;

server {
listen 80;
server_name localhost;

# Serve the static web page
location / {
root /usr/share/nginx/html;
index index.html;
}

# Komet paths
location = /komet {
if ($args = "") { return 301 /komet/; }
proxy_pass http://komet:8080/komet;
}

# Komet proxy with trailing slash
location ~ ^/komet/ {
rewrite ^/komet/(.*) /$1 break;
proxy_pass http://komet:8080;
}

# JPro and app paths
location ~ ^/(jpro|app)/ {
proxy_pass http://komet:8080;
}

# Nexus proxy
location /nexus/ {
proxy_pass http://nexus:8081/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}

location /git/ {
client_max_body_size 512M;
proxy_pass http://gitea:3000/;
proxy_set_header Connection $http_connection;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}

}

# Redirect from port 8080
server {
listen 8080;
server_name localhost;

location /komet/ {
proxy_pass http://komet:8080/;
proxy_buffering off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
proxy_http_version 1.1;
}
}
}
Binary file removed img_1.png
Binary file not shown.