Ruby on rails ec2实例的映像仍在考虑父ec2实例的application.yml和database.yml的原始数据

Ruby on rails ec2实例的映像仍在考虑父ec2实例的application.yml和database.yml的原始数据,ruby-on-rails,amazon-web-services,amazon-ec2,Ruby On Rails,Amazon Web Services,Amazon Ec2,首先,我启动了一个EC2实例,用于为rails应用程序生产部署设置适当的环境。因此,部署成功了。然后我创建了一个ec2实例的映像,用于正式的生产部署。在新图像中,我更改了以下数据: deploy@ip-162-35-33-216:~/apps/appname/shared/config$vi application.yml 我还更改了相同路径中的database.yml文件。但它仍在考虑父EC2实例的数据。 有人能告诉我如何解决这个问题吗 添加更多详细信息: 在我的父ec2实例上,applica

首先,我启动了一个EC2实例,用于为rails应用程序生产部署设置适当的环境。因此,部署成功了。然后我创建了一个ec2实例的映像,用于正式的生产部署。在新图像中,我更改了以下数据:

deploy@ip-162-35-33-216:~/apps/appname/shared/config$vi application.yml

我还更改了相同路径中的database.yml文件。但它仍在考虑父EC2实例的数据。 有人能告诉我如何解决这个问题吗

添加更多详细信息:

在我的父ec2实例上,application.yml如下所示:

SMTP_ADDRESS: 'smtp.gmail.com'
SMTP_PORT: 587
SMTP_DOMAIN: 'domain.com'
SMTP_USERNAME: 'first_username@gmail.com'
SMTP_PASSWORD: 'password'
SUPER_ADMIN_EMAIL: 'super_admin@mailinator.com'
所以当我从应用程序发送电子邮件时,它们是从第一个_user@gmail.com.

然后我创建了父实例的映像,并部署了同一应用程序的副本。 首先,我删除了映像上除了Mysql、nginx和rvm之外的现有应用程序数据(因为映像继承了父实例的数据),并将application.yml的内容更改为以下内容

SMTP_ADDRESS: 'smtp.gmail.com'
SMTP_PORT: 587
SMTP_DOMAIN: 'domain.com'
SMTP_USERNAME: 'second_username@gmail.com'
SMTP_PASSWORD: 'password'
SUPER_ADMIN_EMAIL: 'super_admin@mailinator.com'

当我从新部署的应用程序image instance发送电子邮件时,电子邮件仍然是从“第一个”发送的_username@gmail.com“从何处开始交付”第二_username@gmail.com“

我认为您更改的
应用程序.yml
不适用。更改
应用程序的数据。yml
不会立即应用。重新启动puma时,将应用

如果使用capistrano,请运行
cap production deploy:restart

或者,您可以在生产服务器上运行
pumactl restart

能否提供更多信息并包含相关代码?感谢“创建了那个ec2实例的映像”:——请解释一下。你是说你用它创建了一个AMI吗?或者只是创建实例的快照?