Gatsby Build не работает на Netlify, работает локально. Проблема с зависимостью Ffmpeg - PullRequest
1 голос
/ 17 февраля 2020

Я пытаюсь развернуть свой сайт в Netlify, и команда gatsby build прекрасно работает в моей системе. Но когда я запускаю Netlify, я сталкиваюсь с проблемой, показанной ниже.

Необработанный отказ: не удается найти ffprobe, похоже, проблема. Я думаю, это потому, что у меня установлен ffmpeg в моей системе (macOS), но во время процесса сборки в Netlify нет процедуры установки. Может кто-нибудь подсказать, что я могу сделать, чтобы это исправить?

1:19:18 AM: info bootstrap finished - 5.299 s
1:19:18 AM: ⠀
1:19:22 AM: error UNHANDLED REJECTION Cannot find ffprobe
1:19:23 AM: 
1:19:23 AM:   Error: Cannot find ffprobe
1:19:23 AM:   
1:19:23 AM:   - ffprobe.js:145 
1:19:23 AM:     [repo]/[fluent-ffmpeg]/lib/ffprobe.js:145:31
1:19:23 AM:   
1:19:23 AM:   - capabilities.js:194 
1:19:23 AM:     [repo]/[fluent-ffmpeg]/lib/capabilities.js:194:9
1:19:23 AM:   
1:19:23 AM:   - async.js:52 
1:19:23 AM:     [repo]/[async]/lib/async.js:52:16
1:19:23 AM:   
1:19:23 AM:   - async.js:1209 
1:19:23 AM:     [repo]/[async]/lib/async.js:1209:30
1:19:23 AM:   
1:19:23 AM:   - capabilities.js:186 
1:19:23 AM:     [repo]/[fluent-ffmpeg]/lib/capabilities.js:186:13
1:19:23 AM:   
1:19:23 AM:   - capabilities.js:123 
1:19:23 AM:     [repo]/[fluent-ffmpeg]/lib/capabilities.js:123:9
1:19:23 AM:   
1:19:23 AM:   - async.js:52 
1:19:23 AM:     [repo]/[async]/lib/async.js:52:16
1:19:23 AM:   
1:19:23 AM:   - async.js:1209 
1:19:23 AM:     [repo]/[async]/lib/async.js:1209:30
1:19:23 AM:   
1:19:23 AM:   - capabilities.js:116 
1:19:23 AM:     [repo]/[fluent-ffmpeg]/lib/capabilities.js:116:11
1:19:23 AM:   
1:19:23 AM:   - utils.js:223 
1:19:23 AM:     [repo]/[fluent-ffmpeg]/lib/utils.js:223:16
1:19:23 AM:   
1:19:23 AM:   - which.js:68 F
1:19:23 AM:     [repo]/[which]/which.js:68:16
1:19:23 AM:   
1:19:23 AM:   - which.js:80 E
1:19:23 AM:     [repo]/[which]/which.js:80:29
1:19:23 AM:   
1:19:23 AM:   - which.js:89 
1:19:23 AM:     [repo]/[which]/which.js:89:16
1:19:23 AM:   
1:19:23 AM:   - index.js:42 
1:19:23 AM:     [repo]/[isexe]/index.js:42:5
1:19:23 AM:   
1:19:23 AM:   - mode.js:8 
1:19:23 AM:     [repo]/[isexe]/mode.js:8:5
1:19:23 AM:   
1:19:23 AM: 
1:19:23 AM: not finished run queries - 4.168s
1:19:23 AM: not finished Generating image thumbnails - 4.111s
1:19:23 AM: (sharp:1520): GLib-CRITICAL **: 16:19:23.397: g_hash_table_lookup: assertion 'hash_table != NULL' failed
1:19:23 AM: (sharp:1520): GLib-CRITICAL **: 16:19:23.438: g_hash_table_lookup: assertion 'hash_table != NULL' failed
1:19:23 AM: Skipping functions preparation step: no functions directory set
1:19:23 AM: Caching artifacts
1:19:23 AM: Started saving node modules
1:19:23 AM: Finished saving node modules
1:19:23 AM: Started saving pip cache
1:19:23 AM: Finished saving pip cache
1:19:23 AM: Started saving emacs cask dependencies
1:19:23 AM: Finished saving emacs cask dependencies
1:19:23 AM: Started saving maven dependencies
1:19:23 AM: Finished saving maven dependencies
1:19:23 AM: Started saving boot dependencies
1:19:23 AM: Finished saving boot dependencies
1:19:23 AM: Started saving go dependencies
1:19:23 AM: Finished saving go dependencies
1:19:27 AM: Error running command: Build script returned non-zero exit code: 1
1:19:27 AM: Failing build: Failed to build site
1:19:27 AM: failed during stage 'building site': Build script returned non-zero exit code: 1
1:19:27 AM: Finished processing build request in 1m15.231125909s

Мой gatsby-config.js файл выглядит следующим образом:

module.exports = {
  siteMetadata: {
    title: "#######",
    author: "#######"
  },
  plugins: [
    "gatsby-plugin-sass",
    {
      resolve: "gatsby-source-filesystem",
      options: {
        name: "images",
        path: `${__dirname}/src/images`
      }
    },
    "gatsby-transformer-sharp",
    "gatsby-plugin-sharp",
    "gatsby-transformer-ffmpeg",
    "gatsby-plugin-ffmpeg"
  ]
}

1 Ответ

0 голосов
/ 18 февраля 2020

Образ сборки Netlify запускает Ubuntu , поэтому вы, вероятно, можете установить ffmpeg с помощью следующей команды:

apt-get install ffmpeg

Вы можете добавить этот скрипт к вашей команде сборки Netlify, т.е.

apt-get install ffmpeg && npm run build

или вставьте его как новый скрипт в вашу package.json.


Инструкция по сборке последней версии ffmpeg в Ubuntu: https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

...