gpt4 book ai didi

Docker 和 gulp

转载 作者:行者123 更新时间:2023-12-03 21:40:21 24 4
gpt4 key购买 nike

我使用的是 Windows 7 并且有一个在 boot2docker 上运行的虚拟机。

docker-compose.yml :

web:
image: nginx
ports:
- "80:80"
volumes:
- /var/www/docker/nginx/:/etc/nginx/conf.d/
- /var/www/:/var/www/html/
links:
- php:php

php:
build: php
volumes:
- /var/www/:/var/www/html/
- /var/www/docker/php.ini:/usr/local/etc/php/php.ini
- /var/run/mysqld/mysqld.sock:/var/run/mysqld/mysqld.sock
links:
- db:db

db:
image: mysql
ports:
- "13306:3306"
volumes:
- /var/lib/boot2docker/mysql/:/var/lib/mysql/
environment:
- MYQSL_ROOT_PASSWORD=root

gulpfile.js :

var gulp = require('gulp');
var postcss = require('gulp-postcss');

var processors = [
require('precss'),
require('autoprefixer')({browsers: ['last 2 versions'] }),
require('cssnano')
];

gulp.task('postcss', function() {
gulp.src('gulp/stylesheets/*.css')
.pipe(postcss(processors))
.pipe(gulp.dest('assets/stylesheets/'))
});

gulp.task('watch-postcss', function() {
gulp.watch("gulp/stylesheets/*.css", ["postcss"]);
});

我正在尝试运行 Gulp 以在 VM 外部使用 postcss 编译我的 CSS 文件,但它似乎破坏了我的 VM 共享文件夹中的输出文件。例如,如果我编译这个:
body {
background: red;
}

我在输出文件中得到了这个(这是我想要的):
body{background:red}

但是如果我像这样重新编译 postcss 样式表:
body {
text-align: center;
}

我在我的输出文件中得到了这个:

body{background:red}���

我的本地 (Windows) 文件已正确更新,此错误仅存在于 VM 共享文件夹内的文件中。

我是 Docker 的新手,不知道我做错了什么。我应该在虚拟机内运行 Gulp 吗?还是在容器内?如果是这样,我如何在我的虚拟机/容器中安装和使用 Gulp?

或者我在 docker-compose 文件中做错了什么?

最佳答案

我很确定这个问题是由 nginx 引起的。您应该添加 sendfile off;到您的 nginx 虚拟主机配置。

关于Docker 和 gulp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34109016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com