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

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

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

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

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

972閲覧

EC2サーバーにおいてS3の画像保存がされない

ik425524

総合スコア2

Ruby on Rails

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

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2020/10/27 13:34

前提・実現したいこと

Capistranoによる自動デプロイ導入済み

AWSのEC2サーバーにおいて画像投稿を行うとエラーが発生してしまいます。
保管場所をS3に設定しており、ローカル環境では画像の保存が出来た。
本番環境でも画像を保存出来るようにしたいです。

発生している問題・エラーメッセージ

画像投稿時のエラーログ

D, [2020-10-27T11:45:08.431895 #20923] DEBUG -- : [bcae8d8e-a293-4511-a0b2-5ccb1b83f1a6] User Load (0.3ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 ORDER BY `users`.`id` ASC LIMIT 1 D, [2020-10-27T11:45:08.441089 #20923] DEBUG -- : [bcae8d8e-a293-4511-a0b2-5ccb1b83f1a6] (0.1ms) BEGIN D, [2020-10-27T11:45:08.441965 #20923] DEBUG -- : [bcae8d8e-a293-4511-a0b2-5ccb1b83f1a6] User Load (0.2ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1 D, [2020-10-27T11:45:08.442575 #20923] DEBUG -- : [bcae8d8e-a293-4511-a0b2-5ccb1b83f1a6] (0.1ms) ROLLBACK I, [2020-10-27T11:45:08.443031 #20923] INFO -- : [bcae8d8e-a293-4511-a0b2-5ccb1b83f1a6] Redirected to http://18.180.124.79/topps/new I, [2020-10-27T11:45:08.443252 #20923] INFO -- : [bcae8d8e-a293-4511-a0b2-5ccb1b83f1a6] Completed 302 Found in 13ms (ActiveRecord: 0.7ms) I, [2020-10-27T11:45:08.481704 #20923] INFO -- : [fd76f30f-105f-4bba-8642-3d946547ef6c] Started GET "/topps/new" for 218.220.166.199 at 2020-10-27 11:45:08 +0000 I, [2020-10-27T11:45:08.482469 #20923] INFO -- : [fd76f30f-105f-4bba-8642-3d946547ef6c] Processing by ToppsController#new as HTML D, [2020-10-27T11:45:08.483855 #20923] DEBUG -- : [fd76f30f-105f-4bba-8642-3d946547ef6c] User Load (0.3ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 ORDER BY `users`.`id` ASC LIMIT 1 I, [2020-10-27T11:45:08.484671 #20923] INFO -- : [fd76f30f-105f-4bba-8642-3d946547ef6c] Rendering topps/new.haml within layouts/application I, [2020-10-27T11:45:08.485921 #20923] INFO -- : [fd76f30f-105f-4bba-8642-3d946547ef6c] Rendered topps/_new.haml (0.9ms) I, [2020-10-27T11:45:08.486083 #20923] INFO -- : [fd76f30f-105f-4bba-8642-3d946547ef6c] Rendered topps/new.haml within layouts/application (1.3ms) I, [2020-10-27T11:45:08.487039 #20923] INFO -- : [fd76f30f-105f-4bba-8642-3d946547ef6c] Rendered layouts/_flash.html.haml (0.1ms) I, [2020-10-27T11:45:08.487359 #20923] INFO -- : [fd76f30f-105f-4bba-8642-3d946547ef6c] Completed 200 OK in 5ms (Views: 2.9ms | ActiveRecord: 0.3ms)

該当のソースコード

deproy.rb

ruby

1lock '3.14.1' 2 3set :linked_files, %w{ config/credentials.yml.enc } 4 5set :application, 'kiawase' 6 7set :repo_url, 'git@github.com:ik425524/kiawase.git' 8 9set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'vendor/bundle', 'public/system', 'public/uploads') 10 11set :linked_files, %w{ config/credentials.yml.enc } 12set :linked_files, fetch(:linked_files, []).push("config/master.key") 13 14set :rbenv_type, :user 15set :rbenv_ruby, '2.5.1' 16 17set :ssh_options, auth_methods: ['publickey'], 18 keys: ['~/.ssh/kiawase.pem'] 19 20set :unicorn_pid, -> { "#{shared_path}/tmp/pids/unicorn.pid" } 21 22set :unicorn_config_path, -> { "#{current_path}/config/unicorn.rb" } 23set :keep_releases, 5 24 25after 'deploy:publishing', 'deploy:restart' 26namespace :deploy do 27 task :restart do 28 invoke 'unicorn:restart' 29 end 30 31 desc 'upload credentials.yml.enc' 32 task :upload do 33 on roles(:app) do |host| 34 if test "[ ! -d #{shared_path}/config ]" 35 execute "mkdir -p #{shared_path}/config" 36 end 37 upload!('config/credentials.yml.enc', "#{shared_path}/config/credentials.yml.enc") 38 end 39 end 40 before :starting, 'deploy:upload' 41 after :finishing, 'deploy:cleanup' 42end

carrirwave.rb

require 'carrierwave/storage/abstract' require 'carrierwave/storage/file' require 'carrierwave/storage/fog' CarrierWave.configure do |config| config.storage = :fog config.fog_provider = 'fog/aws' config.fog_credentials = { provider: 'AWS', aws_access_key_id: Rails.application.credentials.aws[:access_key_id], aws_secret_access_key: Rails.application.credentials.aws[:secret_access_key], region: 'ap-northeast-1' } config.fog_directory = 'kiawase-2020' config.asset_host = 'https://s3-ap-northeast-1.amazonaws.com/kiawase-2020' end

試したこと

○sudo vim /etc/environmentの中身を確認

○credentialsの中身を確認
結果

aws: access_key_id: 111111 secret_access_key: 222222 secret_key_base: 111111111

○config.require_master_key = trueコマンドでマスターキーが本番環境に反映されているかの確認

○本番環境でImageMagickが導入されているかの確認

補足情報(FW/ツールのバージョンなど)

deproy.rbの記述、もしくはcredentialsのキーの書き方に間違いがあるのかと仮説を立てているのですが、どこが間違っているのか検討もつかず、検索しても情報が見つからず途方に暮れている状況です。
誤りをご教授頂ければ幸いです。

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

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

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

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

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

mike2mike4

2020/10/27 13:46

S3のバケットポリシーとCORSはどうなってますか?
yu_1985

2020/10/27 16:33

エラーログは具体的にどのログでしょうか? また、肝心のエラーが出てないので抜粋ではなく確実に該当の処理によって出力されたものかがわかるようにログを確認してそれを記載してください。(tail -fしながら画像投稿して出力内容を見る、catやlessなどでもっと広範囲を確認する、など)
ik425524

2020/10/29 11:01

ご返信頂きありがとうございます。追記が遅くなり申し訳ありません バケットポリシー↓ { "Version": "2012-10-17", "Id": "Policy1544152951996", "Statement": [ { "Sid": "Stmt1544152948221", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::594760070037:user/sample_app" }, "Action": "s3:*", "Resource": "arn:aws:s3:::kiawase-2020" } ] } CORSに関しては何も設定しておりません。
ik425524

2020/10/30 01:36

mika2mike4さんへCORSの設定方法をご教授頂きありがとうございます。 しかしながら、入力後に Expected params.CORSConfiguration.CORSRules to be an Array のエラーが解消出来ず登録が出来ない状況です。以前は設定せずとも問題なく動いていたので盲点でした。 先にyu_1985さんの方法を試させて頂きました。 tail -fとdebugを使用し下記のエラーを発見しました。 #<ActiveModel::Errors:0x0000000005949378 @base=#<Topp id: nil, image: nil, size: nil, maker: "", category: "kodomo", user_id: 1, created_at: nil, updated_at: nil>, @messages={}, @details={}> 解消方法が分からずまだ解決には至らない状況です。
mike2mike4

2020/10/30 07:57

CORSの設定を見ないと何も言えませんです。
yu_1985

2020/10/30 12:44

抜粋しないで付近のログをちゃんと全部貼ってください
ik425524

2020/10/31 00:16

失礼致しました。こちらがtail-fを使用した際のログです。 ログの中でエラーが出ていなかったのでlogger.debugを使用し、表示させたエラーが上記のActiveModel〜の部分です。 ``` I, [2020-10-30T01:05:14.375610 #13922] INFO -- : [ec12d947-10a0-4789-8426-c30e08766cca] Completed 200 OK in 3ms (Views: 2.2ms) D, [2020-10-30T01:08:14.011607 #15064] DEBUG -- : (0.2ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483 D, [2020-10-30T01:08:14.014390 #15064] DEBUG -- : (0.1ms) SELECT GET_LOCK('830733669290798805', 0) D, [2020-10-30T01:08:14.019866 #15064] DEBUG -- : (0.2ms) SELECT `schema_migrations`.`version` FROM `schema_migrations` ORDER BY `schema_migrations`.`version` ASC D, [2020-10-30T01:08:14.022727 #15064] DEBUG -- : ActiveRecord::InternalMetadata Load (0.2ms) SELECT `ar_internal_metadata`.* FROM `ar_internal_metadata` WHERE `ar_internal_metadata`.`key` = 'environment' LIMIT 1 D, [2020-10-30T01:08:14.026789 #15064] DEBUG -- : (0.1ms) BEGIN D, [2020-10-30T01:08:14.027701 #15064] DEBUG -- : (0.1ms) COMMIT D, [2020-10-30T01:08:14.027984 #15064] DEBUG -- : (0.1ms) SELECT RELEASE_LOCK('830733669290798805') D, [2020-10-30T01:08:17.066102 #15188] DEBUG -- : (0.2ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483 D, [2020-10-30T01:08:19.773537 #15226] DEBUG -- : (0.2ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483 I, [2020-10-30T01:08:48.262510 #15309] INFO -- : [488f9d47-8114-4e1c-b538-7b96607a451e] Started GET "/topps/new" for 218.220.166.199 at 2020-10-30 01:08:48 +0000 I, [2020-10-30T01:08:48.265447 #15309] INFO -- : [488f9d47-8114-4e1c-b538-7b96607a451e] Processing by ToppsController#new as HTML D, [2020-10-30T01:08:48.274832 #15309] DEBUG -- : [488f9d47-8114-4e1c-b538-7b96607a451e] (0.2ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483 D, [2020-10-30T01:08:48.285337 #15309] DEBUG -- : [488f9d47-8114-4e1c-b538-7b96607a451e] User Load (0.2ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 ORDER BY `users`.`id` ASC LIMIT 1 I, [2020-10-30T01:08:48.316368 #15309] INFO -- : [488f9d47-8114-4e1c-b538-7b96607a451e] Rendering topps/new.haml within layouts/application I, [2020-10-30T01:08:48.330075 #15309] INFO -- : [488f9d47-8114-4e1c-b538-7b96607a451e] Rendered topps/_new.haml (6.1ms) I, [2020-10-30T01:08:48.330294 #15309] INFO -- : [488f9d47-8114-4e1c-b538-7b96607a451e] Rendered topps/new.haml within layouts/application (13.7ms) I, [2020-10-30T01:08:48.345039 #15309] INFO -- : [488f9d47-8114-4e1c-b538-7b96607a451e] Rendered layouts/_flash.html.haml (2.2ms) I, [2020-10-30T01:08:48.345502 #15309] INFO -- : [488f9d47-8114-4e1c-b538-7b96607a451e] Completed 200 OK in 80ms (Views: 31.5ms | ActiveRecord: 2.3ms) I, [2020-10-30T01:08:59.949838 #15309] INFO -- : [3e590768-a771-41ee-9869-9b9d803575c5] Started POST "/topps" for 218.220.166.199 at 2020-10-30 01:08:59 +0000 I, [2020-10-30T01:08:59.950803 #15309] INFO -- : [3e590768-a771-41ee-9869-9b9d803575c5] Processing by ToppsController#create as HTML I, [2020-10-30T01:08:59.951267 #15309] INFO -- : [3e590768-a771-41ee-9869-9b9d803575c5] Parameters: {"utf8"=>"✓", "authenticity_token"=>"uTXMDkaiP7SXyrHDbMRFsd7qPLeJJ/U1Ogw8j/KmuboECe0aj44xkK9fcNfgR4k8jVmyQUhYau31R5asGUmNaA==", "topp"=>{"image"=>#<ActionDispatch::Http::UploadedFile:0x0000000006fce0f8 @tempfile=#<Tempfile:/tmp/RackMultipart20201030-15309-28nfwt.HEIC>, @original_filename="IMG_3903.HEIC", @content_type="image/heic", @headers="Content-Disposition: form-data; name=\"topp[image]\"; filename=\"IMG_3903.HEIC\"\r\nContent-Type: image/heic\r\n">, "size"=>"", "maker"=>"", "category"=>"kodomo"}, "commit"=>"registration"} D, [2020-10-30T01:08:59.953030 #15309] DEBUG -- : [3e590768-a771-41ee-9869-9b9d803575c5] User Load (0.3ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 ORDER BY `users`.`id` ASC LIMIT 1 D, [2020-10-30T01:09:00.078907 #15309] DEBUG -- : [3e590768-a771-41ee-9869-9b9d803575c5] #<ActiveModel::Errors:0x0000000005949378 @base=#<Topp id: nil, image: nil, size: nil, maker: "", category: "kodomo", user_id: 1, created_at: nil, updated_at: nil>, @messages={}, @details={}> D, [2020-10-30T01:09:00.079632 #15309] DEBUG -- : [3e590768-a771-41ee-9869-9b9d803575c5] (0.1ms) BEGIN D, [2020-10-30T01:09:00.081446 #15309] DEBUG -- : [3e590768-a771-41ee-9869-9b9d803575c5] User Load (0.3ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1 D, [2020-10-30T01:09:00.082252 #15309] DEBUG -- : [3e590768-a771-41ee-9869-9b9d803575c5] (0.1ms) ROLLBACK I, [2020-10-30T01:09:00.082894 #15309] INFO -- : [3e590768-a771-41ee-9869-9b9d803575c5] Redirected to http://18.180.124.79/topps/new I, [2020-10-30T01:09:00.083156 #15309] INFO -- : [3e590768-a771-41ee-9869-9b9d803575c5] Completed 302 Found in 132ms (ActiveRecord: 0.8ms) I, [2020-10-30T01:09:00.111079 #15309] INFO -- : [5c4841c3-f4b6-4c3f-898f-fc70b219d555] Started GET "/topps/new" for 218.220.166.199 at 2020-10-30 01:09:00 +0000 I, [2020-10-30T01:09:00.111934 #15309] INFO -- : [5c4841c3-f4b6-4c3f-898f-fc70b219d555] Processing by ToppsController#new as HTML D, [2020-10-30T01:09:00.113498 #15309] DEBUG -- : [5c4841c3-f4b6-4c3f-898f-fc70b219d555] User Load (0.3ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 ORDER BY `users`.`id` ASC LIMIT 1 I, [2020-10-30T01:09:00.114385 #15309] INFO -- : [5c4841c3-f4b6-4c3f-898f-fc70b219d555] Rendering topps/new.haml within layouts/application I, [2020-10-30T01:09:00.115694 #15309] INFO -- : [5c4841c3-f4b6-4c3f-898f-fc70b219d555] Rendered topps/_new.haml (1.0ms) I, [2020-10-30T01:09:00.115894 #15309] INFO -- : [5c4841c3-f4b6-4c3f-898f-fc70b219d555] Rendered topps/new.haml within layouts/application (1.3ms) I, [2020-10-30T01:09:00.116997 #15309] INFO -- : [5c4841c3-f4b6-4c3f-898f-fc70b219d555] Rendered layouts/_flash.html.haml (0.1ms) I, [2020-10-30T01:09:00.117326 #15309] INFO -- : [5c4841c3-f4b6-4c3f-898f-fc70b219d555] Completed 200 OK in 5ms (Views: 3.1ms | ActiveRecord: 0.3ms) ```
guest

回答1

0

自己解決

自己解決しました!deploy.rbファイルの

set :linked_files, %w{ config/credentials.yml.enc }

の記述が不要でした。

さらに自分がテストで投稿しようとしていた画像の形式にも問題があったようで、他の画像であれば問題なく投稿ができました。

この度はご返信頂きありがとうございました。

投稿2020/10/31 01:11

編集2020/10/31 01:32
ik425524

総合スコア2

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問