Skip to content

Commit 7146d3a

Browse files
jerry-goodmanQIQI03
authored andcommitted
update Dockerfile
1 parent 048b981 commit 7146d3a

File tree

6 files changed

+36
-37
lines changed

6 files changed

+36
-37
lines changed

deploy/docker/Dockerfile

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@ ARG REACT_APP_ENV=production
1313
ARG REACT_APP_EDITION=community
1414
RUN yarn build
1515

16+
FROM node:slim AS build-node
17+
COPY ./server/node-service /openblocks-node
18+
WORKDIR /openblocks-node
19+
RUN yarn --immutable
20+
RUN yarn build
21+
1622
FROM openjdk:17-slim AS jre-build
1723
RUN jlink --add-modules java.base,java.compiler,java.datatransfer,java.desktop,java.instrument,java.logging,java.management,java.management.rmi,java.naming,java.net.http,java.prefs,java.rmi,java.scripting,java.se,java.security.jgss,java.security.sasl,java.smartcardio,java.sql,java.sql.rowset,java.transaction.xa,java.xml,java.xml.crypto,jdk.accessibility,jdk.charsets,jdk.crypto.cryptoki,jdk.crypto.ec,jdk.dynalink,jdk.httpserver,jdk.incubator.foreign,jdk.incubator.vector,jdk.internal.vm.ci,jdk.jdwp.agent,jdk.jfr,jdk.jsobject,jdk.localedata,jdk.management,jdk.management.agent,jdk.management.jfr,jdk.naming.dns,jdk.naming.rmi,jdk.net,jdk.nio.mapmode,jdk.sctp,jdk.security.auth,jdk.security.jgss,jdk.unsupported,jdk.xml.dom,jdk.zipfs,jdk.attach \
1824
--output /build/jre \
@@ -38,11 +44,13 @@ RUN wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -
3844
RUN echo "deb [ arch=amd64,arm64 ]http://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list \
3945
&& apt-get remove wget -y
4046

41-
RUN curl -sL https://deb.nodesource.com/setup_14.x | bash - \
42-
&& apt-get -y install --no-install-recommends -y mongodb-org=4.4.6 redis \
47+
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash - \
48+
&& apt-get -y install --no-install-recommends -y mongodb-org=4.4.6 redis nodejs \
4349
&& apt-get clean \
4450
&& rm -rf /var/lib/apt/lists/*
4551

52+
RUN npm install -g yarn
53+
4654
# Clean up cache file - Service layer
4755
RUN rm -rf \
4856
/root/.cache \
@@ -58,6 +66,7 @@ RUN rm -rf \
5866
VOLUME [ "/openblocks-stacks" ]
5967

6068
ENV OPENBLOCKS_SERVER_PROXY_PASS http://localhost:8080
69+
ENV OPENBLOCKS_NODE_PROXY_PASS http://localhost:6060
6170

6271
# copy jre
6372
COPY --from=jre-build /build/jre /app
@@ -67,13 +76,16 @@ ARG PLUGIN_JARS=/openblocks-server/openblocks-plugins/*/target/*.jar
6776

6877
RUN mkdir -p /openblocks /openblocks/plugins /var/www/openblocks /env2
6978

70-
COPY --from=build-server ${JAR_FILE} /openblocks/server/server.jar
71-
COPY --from=build-server ${PLUGIN_JARS} /openblocks/server/plugins/
72-
79+
COPY --from=build-server ${JAR_FILE} /openblocks/server/api-service/server.jar
80+
COPY --from=build-server ${PLUGIN_JARS} /openblocks/server/api-service/plugins/
7381

7482
# copy tace-fe build
7583
COPY --from=build-client /openblocks-client/packages/openblocks/build/ /openblocks/client/
7684

85+
# copy node-service
86+
COPY --from=build-node /openblocks-node /openblocks/server/node-service
87+
COPY ./deploy/docker/scripts/start-node-service.sh /openblocks/server/node-service/start-node-service.sh
88+
7789
# copy nginx conf
7890
COPY ./deploy/docker/templates/nginx/* /openblocks/nginx/
7991
COPY ./deploy/docker/scripts/start-nginx.sh /openblocks/nginx/start-nginx.sh

deploy/docker/entrypoint.sh

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
set -e
44

5-
init_mongodb() {
6-
echo "Init mongoDB"
7-
MONGO_DB_PATH="/openblocks-stacks/data/mongodb"
8-
mkdir -p "$MONGO_DB_PATH"
5+
init_directory() {
6+
# Create sub-directory to store services log in the container mounting folder
7+
mkdir -p /openblocks-stacks/logs/backend
8+
mkdir -p /openblocks-stacks/logs/frontend
9+
mkdir -p /openblocks-stacks/logs/mongodb
10+
mkdir -p /openblocks-stacks/logs/redis
11+
mkdir -p /openblocks-stacks/logs/node
12+
mkdir -p /openblocks-stacks/data/redis
13+
mkdir -p /openblocks-stacks/data/mongodb
914
}
1015

1116
init_configuration() {
@@ -31,14 +36,8 @@ add_user() {
3136
chown $USER_ID:$GROUP_ID /run
3237
}
3338

34-
init_mongodb
39+
init_directory
3540
init_configuration
36-
# Create sub-directory to store services log in the container mounting folder
37-
mkdir -p /openblocks-stacks/logs/backend
38-
mkdir -p /openblocks-stacks/logs/frontend
39-
mkdir -p /openblocks-stacks/logs/redis
40-
mkdir -p /openblocks-stacks/data/redis
41-
4241
add_user
4342

4443
# Handle CMD command

deploy/docker/scripts/start-nginx.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ cp /openblocks/nginx/nginx-root.conf.template /etc/nginx/nginx.conf
99

1010
if [ -e "/openblocks-stacks/ssl/fullchain.pem" ] && [ -e "/openblocks-stacks/ssl/privkey.pem" ];
1111
then
12-
envsubst '$OPENBLOCKS_SERVER_PROXY_PASS' < /openblocks/nginx/nginx-app-https.conf.template > /etc/nginx/conf.d/default.conf
12+
envsubst '$OPENBLOCKS_SERVER_PROXY_PASS,$OPENBLOCKS_NODE_PROXY_PASS' < /openblocks/nginx/nginx-app-https.conf.template > /etc/nginx/conf.d/default.conf
1313
else
14-
envsubst '$OPENBLOCKS_SERVER_PROXY_PASS' < /openblocks/nginx/nginx-app-http.conf.template > /etc/nginx/conf.d/default.conf
14+
envsubst '$OPENBLOCKS_SERVER_PROXY_PASS,$OPENBLOCKS_NODE_PROXY_PASS' < /openblocks/nginx/nginx-app-http.conf.template > /etc/nginx/conf.d/default.conf
1515
fi
1616

1717
exec nginx -g 'daemon off;'

deploy/docker/templates/nginx/nginx-app-http.conf.template

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ server {
33
root /openblocks/client;
44
location / {
55
try_files $uri /index.html;
6-
76
if ($request_filename ~* .*.(html|htm)$) {
87
add_header Cache-Control no-cache;
98
}
@@ -13,14 +12,9 @@ server {
1312
proxy_set_header X-Forwarded-Host $host;
1413
proxy_pass ${OPENBLOCKS_SERVER_PROXY_PASS};
1514
}
16-
location /oauth2 {
17-
proxy_set_header X-Forwarded-Proto $scheme;
18-
proxy_set_header X-Forwarded-Host $host;
19-
proxy_pass ${OPENBLOCKS_SERVER_PROXY_PASS};
20-
}
21-
location /login {
22-
proxy_set_header X-Forwarded-Proto $scheme;
23-
proxy_set_header X-Forwarded-Host $host;
24-
proxy_pass ${OPENBLOCKS_SERVER_PROXY_PASS};
15+
location /node-service/plugin-icons {
16+
proxy_set_header X-Forwarded-Proto $scheme;
17+
proxy_set_header X-Forwarded-Host $host;
18+
proxy_pass ${OPENBLOCKS_NODE_PROXY_PASS};
2519
}
2620
}

deploy/docker/templates/nginx/nginx-app-https.conf.template

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ server {
66
root /openblocks/client;
77
location / {
88
try_files $uri /index.html;
9-
109
if ($request_filename ~* .*.(html|htm)$) {
1110
add_header Cache-Control no-cache;
1211
}
@@ -16,15 +15,10 @@ server {
1615
proxy_set_header X-Forwarded-Host $host;
1716
proxy_pass ${OPENBLOCKS_SERVER_PROXY_PASS};
1817
}
19-
location /oauth2 {
20-
proxy_set_header X-Forwarded-Proto $scheme;
21-
proxy_set_header X-Forwarded-Host $host;
22-
proxy_pass ${OPENBLOCKS_SERVER_PROXY_PASS};
23-
}
24-
location /login {
18+
location /node-service/plugin-icons {
2519
proxy_set_header X-Forwarded-Proto $scheme;
2620
proxy_set_header X-Forwarded-Host $host;
27-
proxy_pass ${OPENBLOCKS_SERVER_PROXY_PASS};
21+
proxy_pass ${OPENBLOCKS_NODE_PROXY_PASS};
2822
}
2923
}
3024

deploy/docker/templates/supervisord/backend.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[program:backend]
2-
directory=/openblocks/server
2+
directory=/openblocks/server/api-service
33
# Ref -Dlog4j2.formatMsgNoLookups=true https://spring.io/blog/2021/12/10/log4j2-vulnerability-and-spring-boot
44
command=/app/bin/java -Djava.security.egd="file:/dev/./urandom" -Dlog4j2.formatMsgNoLookups=true -Dspring.config.location="file:///openblocks/env/application.yml,file:///openblocks-stacks/configuration/application-selfhost.yml" -jar server.jar
55
priority=15

0 commit comments

Comments
 (0)