【问题标题】:Sveltekit static adapter environment variables are not working from docker multi stage buildSveltekit 静态适配器环境变量在 docker 多阶段构建中不起作用
【发布时间】:2022-08-04 00:52:04
【问题描述】:

我使用 Sveltekit 静态适配器创建了一个单页应用程序。并且使用 docker-compose 和 nginx,我能够正确呈现应用程序。但我无法将环境变量从 Docker compose 传递到单页应用程序。

泊坞窗文件

FROM node:16-alpine as dev

WORKDIR /src/app
COPY package*.json .
RUN npm ci
COPY . .

ARG NODE_ENV
ENV NODE_ENV=$NODE_ENV
RUN [ \"npm\", \"run\", \"build\" ]


FROM nginx
COPY ./nginx/default.conf /etc/nginx/conf.d/default.conf
COPY --from=dev /src/app/build /usr/share/nginx/html
CMD [\"nginx\", \"-g\", \"daemon off;\"]

码头工人撰写文件

version: \'3\'
services:
  dev:
    container_name: portal
    build:
      context: .
      args:
        - NODE_ENV=development
    ports:
      - \'4001:80\'
    volumes:
      - /app/node_modules

    标签: docker svelte sveltekit


    【解决方案1】:

    查看您提供的代码,无论它是在开发模式还是生产模式下运行,您似乎都想将其传递给您的应用程序。对于这个用例,Svelte(kit) 附带了一些方便的描述 here

    一般来说,如果你想传递一个环境变量,例如API 客户端密钥,您可以使用documentation 中描述的环境变量访问器函数。

    Svelte 附带了很多电池,因此在自行开发这些东西之前,请检查 Svelte 的文档中是否包含某些内容。

    【讨论】:

      猜你喜欢
      • 2018-04-20
      • 1970-01-01
      • 2017-06-04
      • 2021-03-05
      • 1970-01-01
      • 2019-10-10
      • 2019-03-25
      • 2019-02-25
      • 2021-09-14
      相关资源
      最近更新 更多