簡體   English   中英

帶有打包程序的可能的配置流浪漢

[英]Impossible provisioning vagrant with packer

我想在打包程序腳本中添加軟件包(例如:apache2),以創建包含已安裝的apache2服務器的Vagrant(virtualbox-iso)。

為此,我使用可以正常運行的示例項目(但沒有我的軟件包apache2): Vagrant Ubuntu的Packer項目

我只是在base.sh腳本中添加了2條命令

  • DEBIAN_FRONTEND=noninteractive
  • apt-get -y install apache2

構建打包程序正確運行,而Vagrant也正確運行,但是當使用ssh輸入vagrant時,我始終找不到apache2安裝

但是,構建日志告訴我apache2軟件包已正確安裝。 為此,團隊包裝工不想幫助我,因為她認為這是一個流浪漢的問題,而不是包裝工

日志

    2016/01/09 17:43:07 ui:     virtualbox-iso: The following extra packages will be installed:
2016/01/09 17:43:07 ui:     virtualbox-iso: apache2-bin apache2-data libapr1 libaprutil1 libaprutil1-dbd-sqlite3
2016/01/09 17:43:07 ui:     virtualbox-iso: libaprutil1-ldap ssl-cert
2016/01/09 17:43:07 ui:     virtualbox-iso: Suggested packages:
2016/01/09 17:43:07 ui:     virtualbox-iso: www-browser apache2-doc apache2-suexec-pristine apache2-suexec-custom
2016/01/09 17:43:07 ui:     virtualbox-iso: apache2-utils openssl-blacklist
2016/01/09 17:43:07 ui:     virtualbox-iso: The following NEW packages will be installed:
2016/01/09 17:43:07 ui:     virtualbox-iso: apache2 apache2-bin apache2-data libapr1 libaprutil1 libaprutil1-dbd-sqlite3
2016/01/09 17:43:07 ui:     virtualbox-iso: libaprutil1-ldap ssl-cert
2016/01/09 17:43:07 ui:     virtualbox-iso: 0 upgraded, 8 newly installed, 0 to remove and 69 not upgraded.
2016/01/09 17:43:07 ui:     virtualbox-iso: Need to get 1,285 kB of archives.
2016/01/09 17:43:07 ui:     virtualbox-iso: After this operation, 5,348 kB of additional disk space will be used.
2016/01/09 17:43:07 ui:     virtualbox-iso: Get:1 http://us.archive.ubuntu.com/ubuntu/ trusty/main libapr1 amd64 1.5.0-1 [85.1 kB]
2016/01/09 17:43:07 ui:     virtualbox-iso: Get:2 http://us.archive.ubuntu.com/ubuntu/ trusty/main libaprutil1 amd64 1.5.3-1 [76.4 kB]
2016/01/09 17:43:07 ui:     virtualbox-iso: Get:3 http://us.archive.ubuntu.com/ubuntu/ trusty/main libaprutil1-dbd-sqlite3 amd64 1.5.3-1 [10.5 kB]
2016/01/09 17:43:07 ui:     virtualbox-iso: Get:4 http://us.archive.ubuntu.com/ubuntu/ trusty/main libaprutil1-ldap amd64 1.5.3-1 [8,634 B]
2016/01/09 17:43:07 ui:     virtualbox-iso: Get:5 http://us.archive.ubuntu.com/ubuntu/ trusty-updates/main apache2-bin amd64 2.4.7-1ubuntu4.8 [840 kB]
2016/01/09 17:43:08 ui:     virtualbox-iso: Get:6 http://us.archive.ubuntu.com/ubuntu/ trusty-updates/main apache2-data all 2.4.7-1ubuntu4.8 [160 kB]
2016/01/09 17:43:08 ui:     virtualbox-iso: Get:7 http://us.archive.ubuntu.com/ubuntu/ trusty-updates/main apache2 amd64 2.4.7-1ubuntu4.8 [87.6 kB]
2016/01/09 17:43:08 ui:     virtualbox-iso: Get:8 http://us.archive.ubuntu.com/ubuntu/ trusty/main ssl-cert all 1.0.33 [16.6 kB]
2016/01/09 17:43:08 ui:     virtualbox-iso: Preconfiguring packages ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Fetched 1,285 kB in 1s (859 kB/s)
2016/01/09 17:43:08 ui:     virtualbox-iso: Selecting previously unselected package libapr1:amd64.
2016/01/09 17:43:08 ui:     virtualbox-iso: (Reading database ... 61917 files and directories currently installed.)
2016/01/09 17:43:08 ui:     virtualbox-iso: Preparing to unpack .../libapr1_1.5.0-1_amd64.deb ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Unpacking libapr1:amd64 (1.5.0-1) ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Selecting previously unselected package libaprutil1:amd64.
2016/01/09 17:43:08 ui:     virtualbox-iso: Preparing to unpack .../libaprutil1_1.5.3-1_amd64.deb ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Unpacking libaprutil1:amd64 (1.5.3-1) ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Selecting previously unselected package libaprutil1-dbd-sqlite3:amd64.
2016/01/09 17:43:08 ui:     virtualbox-iso: Preparing to unpack .../libaprutil1-dbd-sqlite3_1.5.3-1_amd64.deb ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Unpacking libaprutil1-dbd-sqlite3:amd64 (1.5.3-1) ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Selecting previously unselected package libaprutil1-ldap:amd64.
2016/01/09 17:43:08 ui:     virtualbox-iso: Preparing to unpack .../libaprutil1-ldap_1.5.3-1_amd64.deb ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Unpacking libaprutil1-ldap:amd64 (1.5.3-1) ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Selecting previously unselected package apache2-bin.
2016/01/09 17:43:08 ui:     virtualbox-iso: Preparing to unpack .../apache2-bin_2.4.7-1ubuntu4.8_amd64.deb ...
2016/01/09 17:43:08 ui:     virtualbox-iso: Unpacking apache2-bin (2.4.7-1ubuntu4.8) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Selecting previously unselected package apache2-data.
2016/01/09 17:43:09 ui:     virtualbox-iso: Preparing to unpack .../apache2-data_2.4.7-1ubuntu4.8_all.deb ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Unpacking apache2-data (2.4.7-1ubuntu4.8) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Selecting previously unselected package apache2.
2016/01/09 17:43:09 ui:     virtualbox-iso: Preparing to unpack .../apache2_2.4.7-1ubuntu4.8_amd64.deb ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Unpacking apache2 (2.4.7-1ubuntu4.8) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Selecting previously unselected package ssl-cert.
2016/01/09 17:43:09 ui:     virtualbox-iso: Preparing to unpack .../ssl-cert_1.0.33_all.deb ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Unpacking ssl-cert (1.0.33) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Processing triggers for ureadahead (0.100.0-16) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: ureadahead will be reprofiled on next reboot
2016/01/09 17:43:09 ui:     virtualbox-iso: Processing triggers for ufw (0.34~rc-0ubuntu2) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Setting up libapr1:amd64 (1.5.0-1) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Setting up libaprutil1:amd64 (1.5.3-1) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Setting up libaprutil1-dbd-sqlite3:amd64 (1.5.3-1) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Setting up libaprutil1-ldap:amd64 (1.5.3-1) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Setting up apache2-bin (2.4.7-1ubuntu4.8) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Setting up apache2-data (2.4.7-1ubuntu4.8) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Setting up apache2 (2.4.7-1ubuntu4.8) ...
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module mpm_event.
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module authz_core.
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module authz_host.
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module authn_core.
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module auth_basic.
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module access_compat.
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module authn_file.
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module authz_user.
2016/01/09 17:43:09 ui:     virtualbox-iso: Enabling module alias.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module dir.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module autoindex.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module env.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module mime.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module negotiation.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module setenvif.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module filter.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module deflate.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling module status.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling conf charset.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling conf localized-error-pages.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling conf other-vhosts-access-log.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling conf security.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling conf serve-cgi-bin.
2016/01/09 17:43:10 ui:     virtualbox-iso: Enabling site 000-default.
2016/01/09 17:43:10 ui:     virtualbox-iso: * Starting web server apache2
2016/01/09 17:43:11 ui:     virtualbox-iso: *
2016/01/09 17:43:11 ui:     virtualbox-iso: Setting up ssl-cert (1.0.33) ...
2016/01/09 17:43:11 ui:     virtualbox-iso: Processing triggers for libc-bin (2.19-0ubuntu6.6) ...
2016/01/09 17:43:11 ui:     virtualbox-iso: Processing triggers for ureadahead (0.100.0-16) ...
2016/01/09 17:43:11 ui:     virtualbox-iso: Processing triggers for ufw (0.34~rc-0ubuntu2) ...
2016/01/09 17:43:12 ui:     virtualbox-iso: [sudo] password for vagrant: Generating grub configuration file ...
2016/01/09 17:43:12 ui:     virtualbox-iso: Found linux image: /boot/vmlinuz-3.19.0-25-generic
2016/01/09 17:43:12 ui:     virtualbox-iso: Found initrd image: /boot/initrd.img-3.19.0-25-generic
2016/01/09 17:43:13 packer-builder-virtualbox-iso.exe: 2016/01/09 17:43:13 remote command exited with '0': echo 'vagrant'|sudo -S sh '/tmp/script_7943.sh'
2016/01/09 17:43:13 packer-builder-virtualbox-iso.exe: 2016/01/09 17:43:13 [INFO] RPC endpoint: Communicator ended with: 0
2016/01/09 17:43:13 [INFO] RPC client: Communicator ended with: 0
2016/01/09 17:43:13 [INFO] RPC endpoint: Communicator ended with: 0
2016/01/09 17:43:13 [INFO] 12338 bytes written for 'stdout'
2016/01/09 17:43:13 [INFO] 179 bytes written for 'stderr'
2016/01/09 17:43:13 ui:     virtualbox-iso: done

流浪漢的哪個過程會導致這種奇怪的行為? (緩存系統,virtualbox緩存...。)

我嘗試

  • 刪除項目的.builds目錄
  • 在virtualbox中刪除映像虛擬機
  • 刪除項目中的packer_cache目錄
  • 創建自己的模板中添加的腳本
  • 從頭開始一個新的打包程序項目,結果相同

這似乎是一個非常非常奇怪的問題,不僅與腳本有關,而且與無業游民和virtualbox運行的機制有關。

為什么安裝的軟件包在我的流浪漢中找不到?

配置

  • 操作系統主機:Windows 7 Pro
  • 操作系統訪客:Ubuntu 14.04 LTS
  • VM技術:VirtualBox 5.0.10
  • VM技術:Vagrant 1.7.4
  • VM工具構建器:Packer 0.8.6

因此,這是我們所知道的關鍵細節。 我們可以從Packer構建的輸出中看到,顯然已經安裝了Apache。 因此,生成的Box文件包括Apache安裝,使用它創建Vagrant VM會導致該VM安裝了Apache。 但是,在您的情況下,Vagrant VM 安裝Apache。

使用消除的過程,這就是我認為發生的事情。 您必須已經使用Packer中的box文件添加了一個名稱相同的Vagrant框,然后才能運行Vagrant。 當您做一個vagrant upvagrant up將查看Vagrantfile中的框名(在這種情況下為config.vm.box ),檢查它是否已經具有該名稱的框,如果存在則使用它。 否則,Vagrant將使用框URL(此處為config.vm.box_url )查找新框,然后使用提供的名稱將其添加。

您知道Packer中的box文件已安裝Apache。 您只需要確保Vagrant可以導入該框,而不要使用已經具有的相同名稱的框。 為此,您需要先刪除它,然后再運行Vagrant ...

vagrant box remove ubuntu-14.04-amd64
vagrant up

然后,您的Vagrant VM將使用Packer創建的已安裝Apache的框。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM