質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

1回答

341閲覧

rails でPDF 生成したい gem "ferrum"利用のdocker環境でない場合の設定方法を教えてください

mi-tomo

総合スコア6

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2024/03/22 21:51

実現したいこと

rails でPDF 生成したい gem "ferrum"利用のdocker環境でない場合の設定方法を教えてください
htmlベースのpdfを生成させたいです。

発生している問題・分からないこと

rails初心者です。
Rails 7.0.5
本番環境centOS9
において
pdf生成機能を以下のgemを使って行っておりましたが、
gem 'wicket_pdf'
gem 'wkhtmltopdf-binary
本番環境ではうまく表示されませんでした。
おそらくcentOS9は非対応なのだと思います。
------------------------------------------------------------------------------エラー内容
RuntimeError: PDF could not be generated! Command Error: pid 1030928 exit 1 /var/www/bill-app7/shared/bundle/ruby/3.1.0/gems/wkhtmltopdf-binary-0.12.6.6/bin/wkhtmltopdf:69:in `<main>': Invalid platform, must be running on Ubuntu 16.04/18.04/20.04/22.04, CentOS 6/7/8, Debian 9/10, Archlinux amd64, or Intel-based Cocoa macOS (missing binary: /var/www/bill-app7/shared/bundle/ruby/3.1.0/gems/wkhtmltopdf-binary-0.12.6.6/bin/wkhtmltopdf_centos_9_amd64). (RuntimeError)

そこでgem "ferrum"を使ってPDF を生成させたいのですが、
必要なのはgem "ferrum" と 
Chrome か Chromiumだけインストールすればできるということなのですが、
質問①:Chromeのインストールはどのようにやるのでしょうか?
参考になりそうな記事を探してはいるのですが、Dockerを使ったものばかり出てきて
(Dockerがわからないため手が出せません)先に進めなくなってしまいました。

質問②:gem "ferrum"はDockerを使わないと利用できないのでしょうか?
質問③:もしDockerを使わずに実装できる場合ローカル環境と本番環境にChromeをインストールすればよいということなのでしょうか?

該当のソースコード

特になし

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

https://qiita.com/kmkkiii/items/ec4564fe408329e2c65f
の記事を参考にしましたが、Dockerで詰まってしまいました。

本番環境にchromeをインストールするとは
https://kodyblog.com/install-google-chrome/
のようなことをすれば良いのか判断がつきません

ご教示いただけると助かります。

補足

特になし

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

本番環境とローカル環境にchromeをインストールしたら特別な設定なく動きました

本番環境参考記事
https://qiita.com/phos/items/b9884be437cdc3b34c59

ローカル環境はmacbookのためhomebrewをつかうのかと考えていろいろ操作しましたが、
結果的に普段PCでインターネット検索に使うブラウザがchromeのため
chromeがインストールしてあれば問題なく動きました。

ferrumでPDFを出力することはできたのですが、(https://zenn.dev/mofmof_inc/articles/pdf_generated_by_ferrum
のやり方を参考にしてやりました)
写真やcssが一部しかうまく反映されませんでした。
ferrumの公式マニュアルにある写真ファイルと同様にPDFファイルに出力する方法はうまく行きましたが、
この方法だとログイン機能ををうまく避ける方法が必要そうです。
(新しくブラウザで開くためログイン画面に遷移してしまう)

wicked_pdfのgemと同様にcssや画像を反映しながらやる方法があるのだと思いますが、
もしご存知の方がおられましたらご教示頂けましたら幸いです。

投稿2024/04/02 00:18

mi-tomo

総合スコア6

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問