2013-04-11 10 views
5

Próbuję zainstalować Jenkins na Vagrant dla mojego środowiska programistycznego.Po zainstalowaniu Jenkins w Vagrant, nie można połączyć się z przeglądarką

Wybieram Ubuntu http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-vagrant-amd64-disk1.box dla mojego pudełka. I to jest powłoka, której używam do zaopatrywania mojego pudła. Wszystko poszło dobrze, ale kiedy próbowałem uzyskać dostęp do skrzynki z portu 80 lub nawet 8080, po prostu nie odpowiadałem. Przeglądanie ciągle się kręci. Nie jestem pewien, co zrobiłem źle tutaj.

Oto mój skrypt.

 

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 [email protected] 
     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 
 

Również vagrant ssh i uruchomić

curl 'http://localhost:8080' 

i powrócił stronę Jenkins, więc myślę, że Jenkins jest uruchomiony i działa prawidłowo. Po prostu nie mogłem uzyskać do niego dostępu z zewnątrz.

Oto mój 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 
 
+1

pytanie standardowe: czy istnieje jakiś rodzaj zapory zaangażowany? – cmur2

+0

Ale z mojego rozumienia pusty ubuntu nie ma zapory ogniowej? Czy ja się mylę? – toy

+0

Może, nie znam interna w twoim konkretnym pudełku - czy twój Jenkins słucha na porcie 80 w twojej maszynie wirtualnej, mam pewien niejasny pomysł, że może on nasłuchiwać na porcie 8080 domyślnie? – cmur2

Odpowiedz

2

Zrobiłem tę pracę poprzez zapewnienie IP do pola Vagrant tak:

config.vm.network :hostonly, "33.33.33.10" 
+1

możesz wyjaśnić? ponieważ to nie działa dla mnie, a także zakładam, że nie jest to sieć hostonowa, ale prywatna – julestruong

Powiązane problemy