我正在使用Windows 7,并在boot2docker上运行虚拟机。
docker-compose.yml:
我在输出文件中得到了这个(这就是我想要的):
但是如果我这样重新编译postcss样式表:
我在输出文件中看到了这个信息:
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和postcss编译我的CSS文件,但是似乎会破坏我的虚拟机共享文件夹中的输出文件。例如,如果我编译以下内容:
body {
background: red;
}
我在输出文件中得到了这个(这就是我想要的):
body{background:red}
但是如果我这样重新编译postcss样式表:
body {
text-align: center;
}
我在输出文件中看到了这个信息:
。
body{background:red}���
我的本地(Windows)文件已经正确更新,这个问题只存在于虚拟机共享文件夹中的文件中。
我是 Docker 的新手,不知道我做错了什么。我应该在虚拟机内运行 Gulp 吗?还是在容器内?如果是这样,我该如何在我的虚拟机/容器中安装和使用 Gulp?
或者是我在 docker-compose 文件中做错了什么吗?