Add environment arguments to Dockerfile

This commit is contained in:
Max Stanley
2023-11-21 21:00:14 +00:00
parent 4ad6bf915b
commit 11a814ac7d
7 changed files with 35 additions and 32 deletions
+4
View File
@@ -3,3 +3,7 @@
**/.svelte-kit **/.svelte-kit
**/dist **/dist
**/docs **/docs
Dockerfile
.dockerignore
docker-compose.yml
+1
View File
@@ -12,3 +12,4 @@ yarn-error.log
/cypress/downloads /cypress/downloads
/cypress/videos /cypress/videos
/cypress/screenshots /cypress/screenshots
/docs
+27 -13
View File
@@ -1,17 +1,31 @@
# Two-stage docker container for mermaid-js/mermaid-live-editor FROM docker.io/library/node:20-alpine3.18 AS mermaid-live-editor-dependencies
# Build : docker build -t mermaid-js/mermaid-live-editor .
# Run : docker run --name mermaid-live-editor --publish 8080:8080 mermaid-js/mermaid-live-editor RUN apk --no-cache add build-base git python3 && \
# Start : docker start mermaid-live-editor rm -rf /var/cache/apk/*
# Use webbrowser : http://localhost:8080
# Stop : press ctrl + c RUN yarn global add node-gyp
# or
# docker stop mermaid-live-editor WORKDIR /app
FROM node:18.18.2 as mermaid-live-editor-builder
COPY --chown=node:node . /home COPY ./package.json .
WORKDIR /home COPY ./yarn.lock .
RUN yarn install RUN yarn install
FROM mermaid-live-editor-dependencies AS mermaid-live-editor-builder
ARG MERMAID_RENDERER_URL
ARG MERMAID_KROKI_RENDERER_URL
COPY . ./
RUN yarn build RUN yarn build
FROM nginxinc/nginx-unprivileged:alpine as mermaid-live-editor-runner FROM mermaid-live-editor-builder AS mermaid-dev
ENTRYPOINT ["yarn", "dev"]
FROM nginx:1.25-alpine3.18 AS mermaid
COPY ./nginx.conf /etc/nginx/conf.d/default.conf COPY ./nginx.conf /etc/nginx/conf.d/default.conf
COPY --from=mermaid-live-editor-builder --chown=nginx:nginx /home/docs /usr/share/nginx/html COPY --from=mermaid-live-editor-builder /app/docs /usr/share/nginx/html
-8
View File
@@ -1,8 +0,0 @@
FROM node:18.18.2
WORKDIR /app
COPY package.json .
COPY yarn.lock .
RUN npm install
COPY . .
RUN ls
CMD ["yarn", "dev"]
+1 -1
View File
@@ -3,7 +3,7 @@ services:
mermaid: mermaid:
build: build:
context: . context: .
dockerfile: Dockerfile.dev target: mermaid-dev
volumes: volumes:
- ./src:/app/src - ./src:/app/src
ports: ports:
-3
View File
@@ -3,9 +3,6 @@
interface ImportMetaEnv { interface ImportMetaEnv {
readonly MERMAID_RENDERER_URL?: string; readonly MERMAID_RENDERER_URL?: string;
readonly MERMAID_KROKI_RENDERER_URL?: string; readonly MERMAID_KROKI_RENDERER_URL?: string;
readonly MERMAID_CDN_URL?: string;
readonly MERMAID_BASE_URL?: string;
readonly MERMAID_LOCAL?: boolean;
// more env variables... // more env variables...
} }
+1 -6
View File
@@ -1,9 +1,4 @@
export const env = { export const env = {
rendererUrl: import.meta.env.MERMAID_RENDERER_URL ?? 'https://mermaid.ink', rendererUrl: import.meta.env.MERMAID_RENDERER_URL ?? 'https://mermaid.ink',
krokiRendererUrl: import.meta.env.MERMAID_KROKI_RENDERER_URL ?? 'https://kroki.io', krokiRendererUrl: import.meta.env.MERMAID_KROKI_RENDERER_URL ?? 'https://kroki.io'
mermaidCDNUrl: import.meta.env.MERMAID_CDN_URL ?? 'https://unpkg.com/@mermaid-js',
mermaidBaseURL: import.meta.env.MERMAID_BASE_URL ?? 'http://localhost:9000',
useLocalMermaid: import.meta.env.MERMAID_LOCAL ?? false,
isDev: import.meta.env.DEV,
baseURL: import.meta.env.BASE_URL
}; };