簡體   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