Copier l'ARN de l'utilisateur IAM
Politique de seau
{
"Version": "2012-10-17",
"Id": "Policy1544152951996",
"Statement": [
{
"Sid": "Stmt1544152948221",
"Effect": "Allow",
"Principal": {
"AWS": "************①****************"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::************②**********"
}
]
}
Décrivez l '«ARN de l'utilisateur» que vous avez noté plus tôt dans (1) ci-dessus, et le «nom du compartiment» que vous avez créé dans (2).
gemfile
gem 'fog-aws'
bundle install
app/uploaders/image_uploader.rb
if Rails.env.development? || Rails.env.test?
storage :file
else
storage :fog
end
Créez un fichier appelé carrierwave.rb à partir de la racine de l'application directement sous config / initializers.
config/initializers/carrierwave.rb
require 'carrierwave/storage/abstract'
require 'carrierwave/storage/file'
require 'carrierwave/storage/fog'
CarrierWave.configure do |config|
if Rails.env.development? || Rails.env.test?
config.storage = :file
else
config.storage = :fog
config.fog_provider = 'fog/aws'
config.fog_credentials = {
provider: 'AWS',
aws_access_key_id: ENV['AWS_ACCESS_KEY_ID'],
aws_secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'],
region: 'ap-northeast-1'
}
config.fog_directory = 'Nom du godet'
config.asset_host = 'https://s3-ap-northeast-1.amazonaws.com/Nom du godet'
end
end
serveur ec2
#Environnement de production
$ ssh -i [nom de la clé pem].pem ec2-user@[Adresse IP élastique associée à l'instance EC2 créée]
(En utilisant la clé téléchargée, ec2-Connectez-vous en tant qu'utilisateur)
$ sudo vim /etc/environment
#Appuyez sur i pour passer en mode insertion et ajoutez ce qui suit. Ne supprimez pas la description existante.
AWS_ACCESS_KEY_ID='Copiez ici la valeur d'ID de clé d'accès du fichier CSV'
AWS_SECRET_ACCESS_KEY='Copiez la valeur de la clé d'accès secrète dans le fichier CSV ici'
#Après l'édition, appuyez sur la touche d'échappement:Tapez wq pour enregistrer et quitter
AWS_ACCESS_KEY_ID et AWS_SECRET_ACCESS_KEY sont décrits dans le fichier CSV téléchargé lors de la création de l'utilisateur IAM.
serveur ec2
#Environnement de production
#Déconnectez-vous une fois pour appliquer la variable d'environnement modifiée.
$ exit
$ ssh -i [nom de la clé pem].pem ec2-user@[Adresse IP élastique associée à l'instance EC2 créée]
#Assurez-vous que les variables d'environnement sont appliquées.
$ env | grep AWS_SECRET_ACCESS_KEY
$ env | grep AWS_ACCESS_KEY_ID
① Pousser vers GitHub ② Exécuter le «déploiement de la production de la limite d'exécution du bundle»
Recommended Posts