2014-09-30 137 views
1

我們正在使用AWS(beanstalk)來承載一個應用程序,執行繁重的圖像處理。 最近我們發現我們需要轉換顏色配置文件,因此ImageMagick似乎需要編譯一些特殊的LCMS支持。安裝最新imagemagick與LCMS上amazon ec2

現在我們使用的是標準的ImageMagick軟件包,亞馬遜提供,我們只是把.ebextentions以下/ xxx.config

packages: 
    yum: 
    ImageMagick: [] 
    git: [] 

有沒有什麼辦法來安裝不同版本的ImageMagick與LCMS支持沒有自己編譯,然後爲此保留我們自己的AMI,我真的很想避免這種情況。

感謝

回答

0

您可以在commands部分添加您自己的命令,或者你甚至可以有整個腳本運行。您可以輕鬆地自行拉取源代碼並使用--with-lcms=yes標誌進行編譯。

在命令部分的一個實例是這樣的:

commands: 
    command1: 
     command: echo "this will run" 
    command2: 
     command: echo "this will run too" 

文檔可以在這裏找到:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html#customize-containers-format-commands

+0

這是負載平衡的環境與多個節點被自動添加時,有在峯值要處理的圖片數量。如果節點將在部署過程中編譯圖像魔術,將會首先破壞添加它們的目的:)我更加尋找一種技巧,可以讓我將yam引用到包含所有內容的其他包中。 – 2014-10-01 01:26:43

+0

如果您不想要創建一個新的AMI的開銷,你總是可以看看Elastic Beanstalk支持的Docker。根據自己的喜好編寫Imagemagick的Docker鏡像應該不會太難。 – 2014-10-01 03:36:34

+1

要添加@JoshDavis答案,您還可以編譯自己的ImageMagick版本並將其存儲在您的S3存儲桶中。然後,您可以使用ebextension命令從S3存儲桶下載rpm,並在部署期間將其安裝在EC2實例上。 – 2014-10-01 18:40:23

相關問題