重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
這篇文章主要介紹使用開源工具 Packer便捷創建自定義鏡像的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
成都創新互聯專注于企業成都全網營銷、網站重做改版、邵武網站定制設計、自適應品牌網站建設、HTML5建站、商城建設、集團公司官網建設、外貿網站制作、高端網站制作、響應式網頁設計等建站業務,價格優惠性價比高,為邵武等各大城市提供網站開發制作服務。
使用Packer創建自定義鏡像
開源工具 Packer 能夠便捷創建自定義鏡像。它能運行在大多數主流操作系統上。參閱本文安裝并使用Packer,輕松創建自定義鏡像。
說明
本文描述僅適用于運行Linux操作系統的服務器。
1. 安裝Packer
您可以進入 Packer 官網下載頁面,選擇下載與您操作系統對應的版本,參閱以下步驟或者訪問Packer 官方安裝說明 安裝 Packer。
連接并登錄到Linux服務器。如果您的服務器為ECS Linux實例,可參閱文檔 使用用戶名密碼驗證連接 Linux 實例。
執行命令cd /usr/local/bin進入/usr/local/bin目錄。
說明
/usr/local/bin 目錄為環境變量目錄,您可以將 Packer 安裝到該目錄下或其他已添加到環境變量的目錄下。
執行命令wget https://releases.hashicorp.com/packer/1.1.1/packer_1.1.1_linux_amd64.zip獲取Packer安裝包。您可以訪問 Packer 下載頁面獲取其他版本Packer安裝包。
執行命令unzip packer_1.1.1_linux_amd64.zip解壓文件。
執行命令packer -v驗證Packer安裝狀態。若Linux服務器返回Packer版本號,表示您已正確安裝Packer。若Linux服務器提示command not found表示Packer未正確安裝。
2. 定義Packer模板
說明
使用Packer創建自定義鏡像時,需要創建一個JSON格式的模板文件。在該模板文件中,您需要指定創建自定義鏡像的 Alicloud Image Builder(生成器)和 Provisioners(配置器)。Packer具有多種配置器,可用于配置自定義鏡像的內容生成方式,以下以常用的 Shell 配置器為例,定義Packer模板。
在Linux服務器中創建名為alicloud的json文件并粘貼以下內容。
{ "variables": { "access_key": "{{env `ALICLOUD_ACCESS_KEY`}}", "secret_key": "{{env `ALICLOUD_SECRET_KEY`}}" }, "builders": [{ "type":"alicloud-ecs", "access_key":"{{user `access_key`}}", "secret_key":"{{user `secret_key`}}", "region":"cn-beijing", "image_name":"packer_basic", "source_image":"centos_7_02_64_20G_alibase_20170818.vhd", "ssh_username":"root", "instance_type":"ecs.n1.tiny", "internet_charge_type":"PayByTraffic", "io_optimized":"true" }], "provisioners": [{ "type": "shell", "inline": [ "sleep 30", "yum install redis.x86_64 -y" ] }] }
說明
您需要自定義以下參數值。
3. 使用Packer創建自定義鏡像
指定Packer模板文件生成自定義鏡像:
導入您的AccessKeyID:運行export ALICLOUD_ACCESS_KEY=您的 AccessKeyID 。
導入您的AccessKeySecret:運行export ALICLOUD_SECRET_KEY=您的 AccessKeySecret 。
執行命令packer build alicloud.json創建自定義鏡像。
示例運行結果如下,以下示例將創建含Redis的自定義鏡像:
alicloud-ecs output will be in this color. ==> alicloud-ecs: Prevalidating alicloud image name... alicloud-ecs: Found image ID: centos_7_02_64_20G_alibase_20170818.vhd ==> alicloud-ecs: Start creating temporary keypair: packer_59e44f40-c8d6-0ee3-7fd8-b1ba08ea94b8 ==> alicloud-ecs: Start creating alicloud vpc --------------------------- ==> alicloud-ecs: Provisioning with shell script: /var/folders/3q/w38xx_js6cl6k5mwkrqsnw7w0000gn/T/packer-shell257466182 alicloud-ecs: Loaded plugins: fastestmirror --------------------------- alicloud-ecs: Total 1.3 MB/s | 650 kB 00:00 alicloud-ecs: Running transaction check --------------------------- ==> alicloud-ecs: Deleting temporary keypair... Build 'alicloud-ecs' finished. ==> Builds finished. The artifacts of successful builds are: --> alicloud-ecs: Alicloud images were created: cn-beijing: m-2ze12578be1oa4ovs6r9
下一步
使用自定義鏡像創建實例
以上是使用開源工具 Packer便捷創建自定義鏡像的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創新互聯行業資訊頻道!