ifconfig does not show any such address however. My host IP adress via DHCP is 192.168.a.z. whatever. diffrent (edited)

"Bringing machine 'twistedbytes-site.blah' up with 'virtualbox' provider... ==> twistedbytes-site.blah: Checking if box 'twistedbytes/webserver' is up to date... ==> twistedbytes-site.blah: Clearing any previously set network interfaces... The specified host network collides with a non-hostonly network! This will cause your specified IP to be inaccessible. Please change the IP or name of your host only network so that it no longer matches that of a bridged or non-hostonly network.

Bridged Network Address: '192.168.xx.y' Host-only Network 'eth0': '192.168.xx.y'"

well at the moment i use the updated version an translated the config manual from dutch. On installation I get IP conflict: (edited)

@deschebbs, if you need any help, please ask. It has options, but they are sort of hidden in config files or "need to know"... (edited)

thanks folks, i keep that in mind. Still trying on twisted.

And being on a windows host, things like NFS (or folder sharing in general) is a waste of time, so I just don't.

NFS didn't work for you? We use NFS shares pretty successfully. 🤔

But it's more of a thing with (internet made) system expectations of a particular feature level of the file system, checked by OS, not by what is mounted (ie. pure assumption). E.g. a load of node modules failing to install because symlinks can't be made.

And the realisation that it only works properly if you start Vagrant (and the associated winnfsd process) in an Administrator command prompt.


How do you find things like yarn watch on an NFS mount? (edited)

We use essentially the same Vagrantfile in an office of 5-6 devs, and most of the time we forget about it.

MS's support for WSL is getting better, so maybe I'll give it a better shot again some time soon (when I have time)

The network share part of our Vagrantfile looks like this:

  1. # share additional folders to the guest VM
  2. host_root = '/workspace/sites' # host folder containing your websites
  3. if is_windows
  4. # use NFS shares to drastically improve performance (options avoid locking issues)
  5. nfs_options = ['vers=3', :udp, :nolock, :noatime,'actimeo=1']
  6. config.vm.synced_folder host_root, '/var/www/html', type: :nfs, mount_options: nfs_options
  7. else
  8. config.vm.synced_folder host_root, '/var/www/html',
  9. id: "vagrant-root",
  10. owner: "vagrant",
  11. group: "www-data",
  12. mount_options: ["dmode=775"]
(edited)
👍 (1)

wow nice, ta. What do you use for providing NFS on windows?

oh, yeah I'm pretty sure I tried that and found it extremely unstable.

More because I use a single box for general purpose dev, and specific ones for targetted testing.

Same. Nor because we're masochists, but because these base boxes don't cover our needs.

I provision my own because I'm a masochist.

Very special provisioning or do you have an official script?

A bit of both. I had a shell script to update ScotchBox to how I needed it - but it is no longer fit for purpose (was for an old release). It should be reasonably applicable to general Debian based systems.

No, I've not seen them before

> Password: dont-use-in-prodction 😂


  1. #!/bin/sh
  2.  
  3. whoami
  4.  
  5. timedatectl set-timezone ${TZ:=Pacific/Auckland}
  6. PHP_CURRENT=$(update-alternatives --get-selections | awk -F / '/^php /{print substr($NF, 4)}')
  7. if [ -z "${PHP_VERSION}" ]
  8. then
  9. PHP_VERSION=${PHP_CURRENT}
  10. fi
  11. INSTALL="${INSTALL} $(dpkg --get-selections "*php${PHP_CURRENT}*" | cut -f 1 | sed "s/${PHP_CURRENT}/${PHP_VERSION}/") php${PHP_VERSION}-xml"
  12.  
  13.  
  14. #update system
  15. if [ -n "${UPDATE}" ]
  16. then
  17. apt-get update -qy
  18. apt-get dist-upgrade -qy
  19. fi
  20. apt-get install -qy $INSTALL
  21.  
  22. #set required setting of date.timezone in relevant php.ini
  23. for PHP_SAPI in apache2 cgi cli fpm
  24. do
  25. sed 's/^/date.timezone=/' /etc/timezone > /etc/php/${PHP_VERSION}/${PHP_SAPI}/conf.d/timezone.ini
  26. done
  27.  
  28. for PHP_BIN in php phar phar.phar
  29. do
  30. update-alternatives --set $PHP_BIN /usr/bin/${PHP_BIN}${PHP_VERSION}
  31. done
  32.  
  33. sudo -u vagrant composer self-update
  34.  
  35. a2dismod php${PHP_CURRENT}
  36. a2enmod php${PHP_VERSION}
  37. a2enmod vhost_alias
  38.  
  39. cat > /etc/apache2/sites-available/star.scotchbox.test.conf <<CONFIG
  40. <VirtualHost *:80>
  41. DocumentRoot "/var/www"
  42. VirtualDocumentRoot "/var/www/%-3+"
  43. ServerName scotchbox.test
  44. ServerAlias *.scotchbox.test
  45. UseCanonicalName Off
  46. LogFormat "%V %h %l %u %t '%r' %s %b" vcommon
  47. ErrorLog "/var/www/autovhost_errors.log"
  48. </VirtualHost>
  49. CONFIG
  50.  
  51. a2dissite scotchbox.local
  52. a2ensite star.scotchbox.test
  53. rm /etc/apache2/sites-available/scotchbox.local.conf
  54.  
  55. service apache2 restart
  56.  
  57. test -e /home/vagrant/work || su -c 'ln -s /var/www ~/work' vagrant
  58.  
  59. #cd work && composer create-project silverstripe/installer public 4.x-dev

This was mine. The intention is to be called with environment vars - e.g. TZ=Pacific/Auckland PHP_VERSION=7.1 ./provision.sh

It allows multi site hosting though, via projectname.scotchbox.test

But it stopped working when scotchbox finally updated (did most of this because it was way out of date)