Roots Discourse

Flawless vagrant up but Unable to connect to trellis.local in browser

Sorry for a lengthy post. I’ve been stuck here for about 9 days.

Result of successful vagrant up --provision

The command vagrant up --provision was successful. I copied the output to a gist,
–>linked here.

However, whenever I try to access the domain, http://trellis.local, I get “Unable to connect” in both FireFox and Chrome.


  • Windows Version 10.0.18363 Build 18363
  • WSL 1 running Ubuntu
  • On WSL, ansible --version = 2.8.0 (also matches in vagrant.default.yml)
  • vagrant 2.2.9 on both Windows and WSL.
  • VirtualBox GUI Version 6.1.14 r140239 (Qt5.6.2)

Let me know if I missed something.


  1. Is site key trellis.local the key for both vault.yml and wordpress_sites.yml? Is there a canonical listed?
    Yes, and Yes, everything is trellis.local.

  2. What does /etc/hosts look like?
    Here is the full cat /etc/hosts output. Snippet:       trellis.local   trellis
## vagrant-hostmanager-start    trellis.local    www.trellis.local
## vagrant-hostmanager-end
  1. Can you ping trellis.local? How about
    Yes, here’s the result.

  2. Can you run vagrant ssh?

  3. Do you even have a bedrock site installed?

vagrant@trellis:/srv/www/trellis.local/current$ ls  composer.json  composer.lock  config  phpcs.xml  vendor  web  wp-cli.yml
  1. Is nginx running?
    Yes, Active: active (running) since Thu 2020-09-24 17:19:34 UTC; 9min ago
    but there appears to be an error.
    Sep 24 17:19:34 trellis systemd[1]: nginx.service: Can't open PID file /var/run/ (yet?) after start: No such fi
    Here is the full output of sudo nginx service status.

  2. Is MariaDB running?
    Yes, here’s the receipt.

  3. (out of desperation) Does the adapter used by VirtualBox for your Vagrant box show the same IPv4 address as vagrant-default.yml:
    VirtualBox is using two adapters, one is NAT, the other is Host-Only Ethernet Adapter #2. To check IPv4 address for Ethernet Adapter #2, go to Control Panel > Network and Internet > Network and Sharing Center > Change adapter settings. Hover over each of the Ethernet adapters until you find the name of the one being used by VirtualBox. Right-click on the adapter > Properties > Double-click on Internet Protocol Version 4 (TCP/IPv4) -> Shows

  4. Does .bashrc allow WSL and Windows to “talk” to each other about VirtualBox?
    Yes, I followed these instructions in the docs, replacing /mnt/c with /mnt/e to reflect VirtualBox installation path.

Next Steps

  • First, I’m going to look into the nginx error in point 4 above.
  • If that doesn’t work, I’ll look into something-something disable Windows firewall.

I’ve already tried starting fresh a couple times, with the same result each time.

Edit: By starting fresh, I mean re-cloning roots/trellis, not the example project.

However, at this point… Does anyone have any tips, please?

What are the contents of Windows’ hosts file? The one you posted looks like it’s the WSL hosts file.



# localhost name resolution is handled within DNS itself.
#       localhost
#	::1             localhost	mvc.localhost	my-reveal-js-project.localhost

# trellis	trellis.local

I’m betting this needs to point to your VM’s IP…? My recollection of doing dev on WSL was that the VMs aren’t really happening “in” WSL, because it’s not capable of turduckening virtualization layers like that, so WSL is just communicating w/ VirtualBox in your Windows environment. In which case I think you’d have to point Windows DNS to the correct IP. It’s been a while though, I could be mistaken.

betting this needs to point to your VM’s IP…?

Let’s try it.

  1. vagrant halt
  2. copy/edit/overwrite C:\Windows\System32\drivers\etc\hosts to trellis.local
  3. restart computer.
  4. trellis > vagrant up --provision (here’s the full output)
  5. cat /etc/hosts on WSL just to check that it updated to -> it did.
  6. Try http://trellis.local -> sends me to https://trellis.local and says “Unable to connect”.

Other random troubleshooting,
Windows Firewall
I temporarily turned off Windows Firewalls, which had no effect: still “Unable to connect”.

All I got is access.log - - [24/Sep/2020:06:14:25 +0000] "GET /2020/09/24/hello-world/ HTTP/1.1" 200 9999 "http://trellis.local/2020/09/24/hello-world/" "WordPress/5.5.1; http://trellis.local" "-"

At this point, I’m willing to try updating Windows to the latest build, which allows for WSL2 instead of WSL1. I expect to report back in a few days if this makes any difference.

IIRC WSL2 is incompatible (mostly) with VirtualBox because WSL2 requires Hyper-V which doesn’t work very well with VirtualBox VMs.

WSL2 is incompatible (mostly) with VirtualBox

Yeahh, I had the same result as DreamOn when trying to use Trellis out the box with WS2.

I destroyed my first Ubuntu distribution, then installed a new Ubuntu 18.04 dist, making sure to set it to WSL1.

With a Trellis project on a fresh distro, running vagrant up appeared to start up just fine.

Now the vagrant IP address and (http://)trellis.local results in “The connection has timed out”, instead of “Unable to connect”.

I’ll check on the access and error logs on the machine after taking a couple days break. :sleeping: