Ich hatte zunächst Schwierigkeiten, Typo3 unter Vagrant auf Unbuntu 14.04 zu installieren, da mir von Typo3 immer angezeigt wurde, es habe keine Schreibberechtigung im html-Ordner. Mit folgenden Schritten habe ich es schließlich doch geschafft.

Zunächst muss Virtualbox und Vagrant installiert sein. In der Vagrant-Anleitung, die unter http://docs.vagrantup.com/v2/getting-started/index.html zu finden ist, steht, dass mit dem Befehl

vagrant init hashicorp/precise32

sofort eine virtuelle Maschine zur Verfügung stände. Das hat bei mir nicht funktioniert. Besser ist es (in einem eigenen leeren Ordner), nur

vagrant init

einzugeben. Dadurch legt Vagrant ein “Vagrantfile” an. Nun könnte man mit

vagrant up

schon Ubuntu in einer virtuellen Maschine installieren, aber es ist dann nur Ubuntu 10.04. Deshalb öffne ich das Vagarantfile, lösche die Zeile

config.vm.box = "base"

und trage sattdessen ein:

config.vm.box = "trusty64"
config.vm.box_url = "https://github.com/kraksoft/vagrant-box-ubuntu/releases/download/14.04/ubuntu-14.04-amd64.box"

Die URL habe ich von der Seite www.vagrantbox.es, von der man sich viele Installations-Boxen herunterladen kann. Ich habe hier eine schlichte Ubuntu-14.04-Box ausgewählt. Anschließend wird mit einem

vagrant up

die Ubuntu-14.04-Installation durchgeführt. Ich überprüfe den Erfolg der Installation mit

vagrant ssh

und sehe, dass ich nun unter Vagrant angemeldet bin.
Jetzt kann es hilfreich sein, sich das Prinzip der Synced Folders klarzumachen, wie es unter http://docs.vagrantup.com/v2/getting-started/synced_folders.html beschrieben steht. Mit

exit

verlässt man seine virtuelle Maschine wieder.

Apache installieren

Als nächstes wird Apache installiert, wie unter docs.vagrantup.com/v2/getting-started/provisioning.html beschrieben. Mit

vagrant reload --provision

wir die neue Konfiguration eingelesen.
In dem Ordner, in dem auch das Vagrantfile liegt, wird ein neuer Ordner mit dem Namen html angelegt. Wichtig ist hierbei, dass dieser Ordner dem <user> gehört und auch zur Gruppe <user> gehört. Falls nicht muss die Zugehörigkeit mit

sudo chown -R <user>:<user> html/

geändert werden, sonst kann Typo3 später nicht auf diesen Ordner zugreifen.

Nun wird noch eine Zeile für die Portweiterleitung ins Vagrantfile geschrieben . Außerdem wird der neue Ordner als Synced Folder miteingebunden und die Rechte werden an den Apache User www-date übergeben. Die komplett selbst eingefügten Zeilen sehen so aus:

config.vm.box = "trusty64"
config.vm.box_url = "https://github.com/kraksoft/vagrant-box-ubuntu/releases/download/14.04/ubuntu-14.04-amd64.box"
config.vm.provision :shell, path: "bootstrap.sh"
config.vm.network :forwarded_port, guest: 80, host: 4567
config.vm.synced_folder "html", "/vagrant/html",
  mount_options: ["dmode=775,fmode=775"]
config.vm.synced_folder "html", "/vagrant/html", id: "vagrant-root" , :owner => "www-data", :group => "www-data"

Nach erneutem

vagrant reload

kann man im Browser unter http://127.0.0.1:4567 erkennen, dass Apache unter dieser Adresse arbeitet.

Typo3 installieren

Mit

vagrant ssh

wechsel ich in die virtuelle Maschine und bringe mit

sudo apt-get update
sudo apt-get upgrade

Ubuntu auf den neusten Stand. Anschließend wird Typo3 installiert, wie hier beschrieben.