0

我正在安裝gitlab ci腳本以在Amazon ECS和升級服務部分部署我的多容器應用程序,我必須使用json作爲任務定義我的容器定義(圖像,名稱,內存,...)。我需要使用環境變量(數據庫密碼,電子郵件,...),但我不想放在這個json文件(它將存儲在gitlab存儲庫),所以什麼是存儲這個最好的解決方案變量存儲庫中?AWS ECS:ENV vars超出任務定義JSON

AWS建議存儲在S3卷(https://aws.amazon.com/es/blogs/security/how-to-manage-secrets-for-amazon-ec2-container-service-based-applications-by-using-amazon-s3-and-docker/),但我不知道是否有更好的選擇。

謝謝!

回答

-1

將雲信息模板存儲在git中是正確的,因爲它會改變,您需要跟蹤這些更改。但是在源代碼控制中當然沒有祕密!在這種情況下,我的首選選項是將源代碼管理下的代碼保存在雲信息模板中,並將祕密存儲在安全的位置,如S3或專用數據庫。

在這種情況下,您可以讓CI系統從您的GitLab存儲庫中提取代碼來構建應用程序並運行測試,然後從所選位置提取配置,以便爲部署做好準備。

例如,如果將祕密存儲在S3中的文件中,則使用讀取這些值的腳本並將它們替換爲json(或yaml)文件的正確字段中的任務定義。這樣,您可以使代碼與配置完全分離,並且可以獨立管理它們。

+1

謝謝!所以再一次,亞馬遜是正確的....「$%/&%(%&/·哈哈哈:) – mbellido