Как настроить порт веб-пакета devServer? - PullRequest
1 голос
/ 02 мая 2019

Я пытаюсь использовать webpack в моем приложении Symfony в докере, но все равно получаю сообщение об ошибке:

GET http://localhost:8000/sockjs-node/info?t=1556798329924 404 (не найдено)

Все отлично работает, поэтому эта ошибка ...

Приложение работает на порте 8000, а узел на порте 8081. Адрес с портом 8081 доступен, но как я могу указать веб-пакету использовать порт 8081 с devServer?

Вот мой webpack.config.js:

const Encore = require('@symfony/webpack-encore');
const StyleLintPlugin = require('stylelint-webpack-plugin');

const outputPath = './public/build/';
const publicPath = '/build';

Encore
  .setOutputPath(outputPath)
  .setPublicPath(publicPath)

  // Clean output dir before build
  .cleanupOutputBeforeBuild()

  .splitEntryChunks()
  .enableSingleRuntimeChunk()

  // uncomment if you're having problems with a jQuery plugin
  .autoProvidejQuery()

  // Generate JS files
  .addEntry('loader', './assets/javascript/loader.js')
  .addEntry('admin-loader', './assets/javascript/admin.js')

  // Generate CSS files
  .addStyleEntry('forms', './assets/styles/forms.scss')
  .addStyleEntry('grid', './assets/styles/grid.scss')
  .addStyleEntry('reboot', './assets/styles/reboot.scss')
  .addStyleEntry('styles', './assets/styles/styles.scss')
  .addStyleEntry('utilities', './assets/styles/utilities.scss')
  .addStyleEntry('admin', './assets/styles/admin.scss')

  .enableEslintLoader()
  .configureTerserPlugin((options) => {
    options.cache = true;
    options.parallel = true;
    options.terserOptions = {
      output: {
        comments: false,
      }
    }
  })

  .configureSplitChunks((options) => {
    options.chunks = 'all',
      options.maxInitialRequests = Infinity,
      options.cacheGroups = {
        vendor: {
          test: /[\\/]node_modules[\\/]/,
          name(module) {
            const packageName = module.context.match(/[\\/]node_modules[\\/](.*?)([\\/]|$)/)[1];
            return `pckg.${packageName.replace('@', '')}`;
          },
        }
      }
  })

  // Enable SASS loader with PostCSS config
  .enableSassLoader()
  .enablePostCssLoader()

  .enableSourceMaps(!Encore.isProduction())
  .enableVersioning(Encore.isProduction())

  // CSS Hot Loader for HMR in webpack dev server
  .addLoader({
    enforce: 'post',
    test: /\.(s?c|sa)ss$/,
    exclude: /node_modules/,
    loader: 'css-hot-loader',
  })

  .addPlugin(new StyleLintPlugin({
    lintDirtyModulesOnly: Encore.isProduction(),
    context: './assets/styles/',
    quiet: false,
  }));

const config = Encore.getWebpackConfig();

// Export settings and generate files
module.exports = config;

Кто-нибудь знает?

...