热重载不适用于 docker 上的 Bigcommerce/Stencil

问题描述

我想使用 Docker,因为 bigcommerce/stencil-cli支持节点版本 10x 或 12x。我无法正确配置 docker 以使重新加载(浏览器同步)工作。

当我编辑任何 SASS 或 HTML 主题文件时,我的更改不会在 localhost:3000 上显示

我真的不明白为什么,我觉得这个配置没问题。

这里是 Dockerfile 配置

FROM node:10

workdir /theme
RUN npm -g config set user root
RUN npm install -g @bigcommerce/stencil-cli

EXPOSE 3000 3001 3002

我使用的是认的 Cornerstone Theme

构建我的 docker 镜像。

docker build -t docker-stencil .

运行docker容器

docker run -it -v /$(pwd):/theme -p3000:3000 -p3001:3001 -p3002:3002 docker-stencil stencil start

解决方法

您是否使用‘stencil init’在容器上初始化了stencil?从您发布的命令来看,这一步似乎已被跳过。如果 CLI 首先在他们的机器上初始化,则 CLI 可能正在查看您的机器,而不是 docker vm 实例(如果是这种情况)。

告诉我! 此外,这也是一个很好的资源:Dockerizing BC Stencil