Skip to content

Commit 4304708

Browse files
authored
Merge pull request #574 from lowcoder-org/docker_build_update
Docker build update
2 parents b106575 + 6292b35 commit 4304708

File tree

6 files changed

+25
-18
lines changed

6 files changed

+25
-18
lines changed

deploy/docker/Dockerfile

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,3 @@
1-
##
2-
## Create custom JRE for running Lowcoder server application
3-
##
4-
FROM eclipse-temurin:17-jdk-jammy AS jre-build
5-
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 \
6-
--output /build/jre \
7-
--no-man-pages \
8-
--no-header-files \
9-
--compress=2
10-
111
##
122
## Build Lowcoder api-service application
133
##
@@ -23,9 +13,6 @@ RUN mkdir -p /lowcoder/api-service/plugins /lowcoder/api-service/config /lowcode
2313
ARG JAR_FILE=/lowcoder-server/lowcoder-server/target/lowcoder-server-*.jar
2414
ARG PLUGIN_JARS=/lowcoder-server/lowcoder-plugins/*/target/*.jar
2515

26-
# Copy Java runtime for running server
27-
COPY --from=jre-build /build/jre /lowcoder/api-service/jre
28-
2916
# Copy lowcoder server application and plugins
3017
RUN cp ${JAR_FILE} /lowcoder/api-service/server.jar \
3118
&& cp ${PLUGIN_JARS} /lowcoder/api-service/plugins/
@@ -45,7 +32,7 @@ RUN chmod +x /lowcoder/api-service/*.sh
4532
## To create a separate image out of it, build it with:
4633
## DOCKER_BUILDKIT=1 docker build -f deploy/docker/Dockerfile -t lowcoderorg/lowcoder-ce-api-service --target lowcoder-ce-api-service .
4734
##
48-
FROM ubuntu:jammy as lowcoder-ce-api-service
35+
FROM eclipse-temurin:17-jammy as lowcoder-ce-api-service
4936
LABEL maintainer="lowcoder"
5037

5138
RUN apt-get update && apt-get install -y --no-install-recommends gosu \
@@ -152,7 +139,8 @@ LABEL maintainer="lowcoder"
152139
# Change default nginx user into lowcoder user and remove default nginx config
153140
RUN usermod --login lowcoder --uid 9001 nginx \
154141
&& groupmod --new-name lowcoder --gid 9001 nginx \
155-
&& rm -f /etc/nginx/nginx.conf
142+
&& rm -f /etc/nginx/nginx.conf \
143+
&& mkdir -p /lowcoder/assets
156144

157145
# Copy lowcoder client data
158146
COPY --chown=lowcoder:lowcoder --from=build-client /lowcoder-client/packages/lowcoder/build/ /lowcoder/client
@@ -207,8 +195,10 @@ RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install --no-instal
207195
supervisor \
208196
gosu \
209197
nodejs \
198+
openjdk-17-jdk-headless \
210199
&& npm install -g yarn \
211-
&& rm -rf /var/cache/apt/lists
200+
&& rm -rf /var/cache/apt/lists \
201+
&& mkdir -p /lowcoder/assets
212202

213203
# Add lowcoder api-service
214204
COPY --chown=lowcoder:lowcoder --from=lowcoder-ce-api-service /lowcoder/api-service /lowcoder/api-service

deploy/docker/api-service/entrypoint.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,10 @@ export GROUP_ID="${PGID:=9001}"
99
echo "Initializing api-service..."
1010
/lowcoder/api-service/init.sh
1111

12+
if [ -z $JAVA_HOME ]; then
13+
JAVA_HOME=`dirname $(dirname $(readlink -f $(which javac)))`
14+
fi;
1215
APP_JAR="${APP_JAR:=/lowcoder/api-service/server.jar}"
13-
JAVA_HOME=/lowcoder/api-service/jre
1416
JAVA_OPTS="${JAVA_OPTS:=}"
1517
CUSTOM_APP_PROPERTIES="${APP_PROPERTIES}"
1618
CONTEXT_PATH=${CONTEXT_PATH:=/}

deploy/docker/docker-compose-multi.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ services:
1313
MONGO_INITDB_ROOT_PASSWORD: secret123
1414
# Uncomment to save database data into local 'mongodata' folder
1515
# volumes:
16-
# - ./mogodata:/data/db
16+
# - ./mongodata:/data/db
1717
restart: unless-stopped
1818

1919
redis:
@@ -95,4 +95,7 @@ services:
9595
depends_on:
9696
- lowcoder-node-service
9797
- lowcoder-api-service
98+
# Uncomment to serve local files as static assets
99+
# volumes:
100+
# - ./static-assets:/lowcoder/assets
98101

deploy/docker/docker-compose.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,5 +52,6 @@ services:
5252
LOWCODER_MAX_QUERY_TIMEOUT: 120
5353
volumes:
5454
- ./lowcoder-stacks:/lowcoder-stacks
55+
- ./lowcoder-stacks/assets:/lowcoder/assets
5556
restart: unless-stopped
5657

deploy/docker/frontend/nginx-http.conf

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,11 @@ http {
4747
}
4848
}
4949

50+
location /assets {
51+
alias /lowcoder/assets;
52+
expires 1M;
53+
}
54+
5055
location /api {
5156
proxy_set_header X-Forwarded-Proto $scheme;
5257
proxy_set_header X-Forwarded-Host $host;

deploy/docker/frontend/nginx-https.conf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ http {
5050
}
5151
}
5252

53+
location /assets {
54+
root /lowcoder/assets;
55+
alias /lowcoder/assets;
56+
expires 1M;
57+
}
58+
5359
location /api {
5460
proxy_set_header X-Forwarded-Proto $scheme;
5561
proxy_set_header X-Forwarded-Host $host;

0 commit comments

Comments
 (0)