Решение проблемы таилось в другом. Оказалось, что фаервол резал 3000 порт, у нас в компании первым делом безопасность. После того как мне открыли порт, я без особых усилий смог настроить browser-sync.
'use strict';
const browserSync = require('browser-sync').create();
gulp.task('bs', function(){
browserSync.init({
proxy: "http://example.com/", // проксирование вашего удаленного сервера, не важно на чем back-end
logPrefix: 'example.com', // префикс для лога bs, маловажная настройка
host: 'example.com', // можно использовать ip сервера
port: 3000, // порт через который будет проксироваться сервер
open: 'external', // указываем, что наш url внешний
notify: true,
ghost: true,
files: [/*массив с путями к файлам и папкам за которыми вам нужно следить*/]
});
browserSync.watch([/*массив с путями к файлам и папкам за которыми вам нужно следить*/]).on('change', browserSync.reload); //вотчер для команды перезагрузки bs
});
gulp.task('build', gulp.series('compile', gulp.parallel('watch', 'bs')));
Заходим по ssh на наш сервер и запускаем сборку.
Открываем
http://example.com:3000/
, и наслаждаемся всеми фишками browser-sync.