Упаковщик ждет SSH - PullRequest
       22

Упаковщик ждет SSH

0 голосов
/ 06 июня 2018

Я новичок в пакере.Я исследовал этот вопрос (выше) очень подробно.В настоящее время я пытаюсь создать 32-битную виртуальную машину UBuntu.Я использую Packer на ОС Windows 10.Как только установка завершена и виртуальная машина перезагружается, я получаю приглашение с графическим интерфейсом для входа в систему на моей виртуальной машине, в то время как упаковщик все еще работает на моем хосте. Windows сообщает, что ждет, пока SSH станет доступным.Как лучше всего включить ssh для Packer, чтобы использовать его для подключения к моей виртуальной машине.Вот мой json.template

{
    "builders": [
      {
        "type": "virtualbox-iso",
        "vm_name": "{{ user `alias` }}",
        "vboxmanage": [          
            [ "modifyvm", "{{.Name}}", "--cpus", "1" ],
            [ "modifyvm", "{{.Name}}", "--memory", "{{user `ram`}}" ],
            [ "modifyvm", "{{.Name}}", "--clipboard", "bidirectional" ],             
            [ "modifyvm", "{{.Name}}", "--draganddrop", "bidirectional" ], 
            [ "modifyvm", "{{.Name}}", "--audio", "none" ],
            [ "modifyvm", "{{.Name}}", "--nic1", "intnet"], 
            [ "modifyvm", "{{.Name}}","--nic2", "null"],
            [ "modifyvm", "{{.Name}}","--vram", "16"],
            [ "modifyvm", "{{.Name}}","--mouse", "usbtablet"]              
          ],
        "guest_os_type": "Ubuntu",
        "iso_url": "{{ user `iso_url` }}",
        "iso_checksum": "{{ user `iso_checksum` }}",
        "iso_checksum_type": "md5",
        "disk_size": "{{ user `disk_size` }}",
        "ssh_username": "{{ user `ssh_username` }}",
        "ssh_password": "{{ user `ssh_password` }}",
        "ssh_timeout": "{{ user `ssh_timeout` }}",
        "guest_additions_mode": "attach",
        "headless": "{{ user `headless` }}", 
        "boot_wait": "3s",
        "boot_command": [
          "<enter><wait><esc><enter><wait>",
          "/install/vmlinuz<wait>",
          " {{user `preseed_path`}}",
          " debian-installer/locale=en_US console-setup/ask_detect=false<wait>",
          " console-setup/layoutcode=us<wait>",
          " keyboard-configuration/layoutcode=us<wait>",
          " passwd/user-password={{ user `ssh_password` }}<wait>",
          " passwd/user-password-again={{ user `ssh_password` }}<wait>",
          " finish-install/reboot_in_progress=note<wait>",
          " netcfg/use_autoconfig=false<wait>",
          " cdrom-detect/eject boolean=false<wait>",
          " initrd=/install/initrd.gz<wait>",
           "<enter><wait>"
        ],
        "shutdown_command": "sudo shutdown -h now"
      }
    ],
    "post-processors": [
      {
        "type": "vagrant",
        "output": "C://{{ user `box_name` }}.box"
      }
    ],
    "variables": {
      "headless": "false",
      "iso_checksum": "7",
      "iso_url": "{{file path}}",
      "disk_size": "256000",
      "alias": "packervm",
      "box_name": "ubuntu_custom",
      "ssh_timeout": "20m",
      "ssh_username": "{{username}}",
      "ssh_password": "{{password}}",
      "preseed_path":"file=/cdrom/preseed/preseed.cfg",
      "ram": "2048"
    }
  }

PS Да, я просматривал шаблоны, прежде чем прийти сюда и задать этот вопрос.

Ответы [ 2 ]

0 голосов
/ 08 июня 2018

На самом деле, я понял.Это была комбинация установки ssh_port в 22, установки ssh_address в адрес моего виртуального компьютера, установки ssh_skip_nat_mapping в значение true, а затем в замене моей ник-карты из внутренней сети на hostonly и последующей ее настройке.

0 голосов
/ 06 июня 2018

Вы перезаписываете настройки сети Packers и, таким образом, хост не сможет связаться с гостем.Чтобы исправить это, удалите две следующие строки:

[ "modifyvm", "{{.Name}}", "--nic1", "intnet"], 
[ "modifyvm", "{{.Name}}","--nic2", "null"],
...