在Windows WSL的Docker容器中执行npm install时遇node-sass错误
问题:WSL环境下Laravel项目执行npm install遇node-sass错误
我正尝试在Windows环境通过WSL搭建Laravel项目,但执行npm install时遇到node-sass错误,已尝试多种方案均无效。错误截图如下:
如需更多细节可提供,盼快速协助。
我的WSL环境版本
- node - 21
- npm - 10
- nvm - 0.39.0
Dockerfile内容
FROM php:7.2-apache RUN sed -i 's/stable/updates/stable-security/updates/' /etc/apt/sources.list RUN apt-get update --fix-missing RUN mkdir -p /usr/share/man/man1 RUN mkdir -p /usr/share/pdftk RUN apt-get update && apt-get install -y make RUN apt-get install -y openjdk-11-jre RUN apt-get install -y libmagickwand-dev RUN apt-get install -y git RUN apt-get install -y curl RUN apt-get install -y libssl-dev RUN apt-get install -y libmcrypt-dev RUN apt-get install -y libgmp-dev RUN apt-get install -y libtidy-dev RUN apt-get install -y libpspell-dev RUN apt-get install -y libcurl4-gnutls-dev RUN apt-get install -y libldap2-dev RUN apt-get install -y libc-client-dev RUN apt-get install -y libkrb5-dev RUN apt-get install -y librecode-dev RUN apt-get install -y libsnmp-dev RUN apt-get install -y libenchant-dev RUN apt-get install -y make RUN apt-get install -y python2.7 RUN apt-get install -y build-essential RUN rm -r /var/lib/apt/lists/* COPY ./pdftk/pdftk.jar /usr/share/pdftk/ COPY ./pdftk/commons-lang3.jar /usr/share/java/ COPY ./pdftk/bcprov-1.58.jar /usr/share/java/ COPY ./pdftk/pdftk /usr/bin RUN chmod +x /usr/bin/pdftk RUN apt-get clean RUN docker-php-ext-configure gmp RUN docker-php-ext-configure imap --with-kerberos --with-imap-ssl RUN docker-php-ext-install gmp snmp soap gd enchant recode curl tidy \ opcache pspell xmlrpc ldap bz2 imap dba intl xml mbstring zip pdo_mysql \ gmp gd bcmath ctype json tokenizer exif mysqli calendar RUN curl --silent --show-error https://getcomposer.org/installer | \ php -- --install-dir=/usr/local/bin --filename=composer RUN pecl install imagick mongodb RUN echo "extension=imagick.so" > /usr/local/etc/php/conf.d/ext-imagick.ini && \ echo "extension=mongodb.so" > /usr/local/etc/php/conf.d/mongodb.ini ENV APACHE_DOCUMENT_ROOT /var/www/html/public RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf RUN a2enmod rewrite ENV NVM_DIR /root/.nvm ENV NODE_VERSION 8.17.0 RUN mkdir $HOME/.nvm && \ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash && \ chmod +x $HOME/.nvm/nvm.sh && \ . $HOME/.nvm/nvm.sh && \ nvm install --latest-npm "$NODE_VERSION" && \ nvm alias default "$NODE_VERSION" && \ nvm use default && \ DEFAULT_NODE_VERSION=$(nvm version default) && \ ln -sf /root/.nvm/versions/node/$DEFAULT_NODE_VERSION/bin/node /usr/bin/nodejs && \ ln -sf /root/.nvm/versions/node/$DEFAULT_NODE_VERSION/bin/node /usr/bin/node && \ ln -sf /root/.nvm/versions/node/$DEFAULT_NODE_VERSION/bin/npm /usr/bin/npm RUN npm install gulp -g RUN pecl install xdebug-2.9.8 \ && docker-php-ext-enable xdebug
内容的提问来源于stack exchange,提问作者kishan maharana
相关产品推荐
相关产品推荐

