開発環境用に Vagrant に Jenkins をインストールしようとしています。
ボックスにUbuntu http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-vagrant-amd64-disk1.boxを選択します。これは、ボックスのプロビジョニングに使用するシェルです。すべてうまくいきましたが、ポート 80 または :8080 からボックスにアクセスしようとしても応答しません。ブラウジングは回転し続けました。ここで何が間違っていたのかわかりません。
これが私のスクリプトです。
sudo apt-get update
echo "APT::Cache-Limit "100000000";" >> /etc/apt/apt.conf.d/70debconf
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get -y --force-yes install jenkins
sudo apt-get -y --force-yes install apache2
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod vhost_alias
sudo a2dissite default
echo '
ServerAdmin webmaster@localhost
ServerName ci.company.com
ServerAlias ci
ProxyRequests Off
Order deny,allow
Allow from all
ProxyPreserveHost on
ProxyPass / http://localhost:8080/
' >> /etc/apache2/sites-available/jenkins
sudo a2ensite jenkins
sudo sh -c 'echo "ServerName localhost" >> /etc/apache2/conf.d/name' && sudo service apache2 restart
sudo apache2ctl restart
私vagrant ssh
も走ります
curl 'http://localhost:8080'
Jenkins ページが返されたので、Jenkins は正常に動作していると思います。外部からアクセスできなかっただけです。
ここに私のVagrantfileがあります
Vagrant.configure("2") do |config|
config.vm.provision :shell, :path => "install-jenkins.sh"
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--memory", "2024"]
end
# Every Vagrant virtual environment requires a box to build off of.
config.vm.box = "ubuntu64"
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
config.vm.network :forwarded_port, guest: 80, host: 8080
end