繁体   English   中英

Tailwind CSS 在节点 Docker 容器中运行项目时出现 EACCESS 错误(Docker Compose)

[英]Tailwind CSS EACCESS Error When Running Project In Node Docker Container (Docker Compose)

我有一个使用 svelte-kit 和 Tailwind CSS 的项目。 我最近将它转移到使用 docker 组合。 当我运行我的容器时,我在 WSL 中运行它们,因为它们通常在那里运行得更好。 当我启动运行开发服务器的容器时,它启动并运行得很好,但是当我在浏览器中打开 URL 时,出现以下错误。

Error: EACCES: permission denied, mkdir '/root/.tailwindcss/touch'
    at Object.mkdirSync (node:fs:1325:3)
    at Object.<anonymous> (/var/www/html/node_modules/tailwindcss/jit/lib/setupContext.js:44:8)
    at Module._compile (node:internal/modules/cjs/loader:1109:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1138:10)
    at Module.load (node:internal/modules/cjs/loader:989:32)
    at Function.Module._load (node:internal/modules/cjs/loader:829:14)
    at Module.require (node:internal/modules/cjs/loader:1013:19)
    at require (node:internal/modules/cjs/helpers:93:18)
    at Object.<anonymous> (/var/www/html/node_modules/tailwindcss/jit/index.js:7:22)
    at Module._compile (node:internal/modules/cjs/loader:1109:14)

我不确定是什么导致了这个错误,但我认为它与顺风有关。 这是我的 docker-compose 文件的链接: https://github.com/DriedSponge/GorillianCurrencyConversion/blob/master/docker-compose.yml

如果您想自己尝试一下,这里有一个指向 repo 的链接和重现步骤: https://github.com/DriedSponge/GorillianCurrencyConversion

安装包: docker-compose run npm install

启动开发服务器: docker-compose --profile dev up -d --build

如果您对正在发生的事情有任何想法,或者如果您需要我提供任何其他信息,请告诉我。 提前致谢!

看起来 Tailwind 正在尝试创建一个与在开发过程中监视文件更改有关的触摸文件,特别是当 Tailwind 处于JIT 模式时。

您可以通过以下任一方式解决此问题:

  1. 允许对/root/.tailwindcss进行写访问。
  2. 通过设置TAILWIND_DISABLE_TOUCH环境变量禁用触摸。
  3. 通过将TAILWIND_TOUCH_DIR环境变量设置为允许写入的位置来更改触摸文件目录。

要设置环境变量,在package.json文件中设置可能是最方便的。 只需在scripts下相关命令前添加环境变量即可,例如:

"dev": "TAILWIND_TOUCH_DIR='/var/www/html/.tailwindcss/touch' svelte-kit dev"

注意不要将此目录指向包含重要文件的目录,因为 Tailwind 会删除该目录中的所有文件。

除了源代码中的注释外,这些选项都没有记录在任何地方,所以我不完全确定这样做的后果是什么,尤其是在开发模式下。 我相信这用于在文件更改时进行通信,因此选项 1 或 3 可能是最安全的选择。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM