溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用開源工具 Packer便捷創建自定義鏡像的方法

發布時間:2020-08-27 10:57:03 來源:億速云 閱讀:400 作者:小新 欄目:建站服務器

這篇文章主要介紹使用開源工具 Packer便捷創建自定義鏡像的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

使用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"
       ]
     }]
   }

說明

您需要自定義以下參數值。

使用開源工具 Packer便捷創建自定義鏡像的方法

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便捷創建自定義鏡像的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女