-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathDockerfile.local
More file actions
36 lines (29 loc) · 1.28 KB
/
Copy pathDockerfile.local
File metadata and controls
36 lines (29 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# syntax=docker/dockerfile:1
# Build pico-engine 1.5.x from this checkout (engine + bundled UI).
# Requires sibling pico-framework (loadedPicos) via BuildKit additional context.
#
# docker compose build
# docker compose up -d
#
# Or: docker build -f Dockerfile.local --build-context pico-framework=../pico-framework -t picolabs/pico-engine:1.5.1 .
FROM node:lts-alpine
WORKDIR /usr/src/app
COPY --from=pico-framework . /usr/src/pico-framework
RUN cd /usr/src/pico-framework && npm install --no-package-lock && npm run build
COPY package.json lerna.json ./
COPY packages ./packages
RUN npm install --no-package-lock \
&& npm run bootstrap \
&& rm -rf packages/krl-stdlib/node_modules/pico-framework \
packages/pico-engine-core/node_modules/pico-framework \
packages/pico-engine/node_modules/pico-framework \
&& ln -s /usr/src/pico-framework packages/krl-stdlib/node_modules/pico-framework \
&& ln -s /usr/src/pico-framework packages/pico-engine-core/node_modules/pico-framework \
&& ln -s /usr/src/pico-framework packages/pico-engine/node_modules/pico-framework \
&& npm run build \
&& cd packages/pico-engine-ui && npm run build
RUN npm install -g ./packages/pico-engine
ENV PICO_ENGINE_HOME=/var/pico-image
VOLUME ["/var/pico-image"]
EXPOSE 3000
CMD ["pico-engine"]