Scotch Box is a preconfigured Vagrant Box with a full array of LAMP Stack features to get you up and running with Vagrant in no time.

Overview

Scotch Box

GET SCOTCH BOX PRO

TUTORIAL

Just a Dead-Simple Local LAMP/LEMP Stack for Vagrant. Making Vagrant EASY AS EATING CAKE for developers.

Scotch Box

Scotch Box is a pre-configured Vagrant Box with a full array of features to get you up and running with Vagrant in no time.

Scotch Box 3.5!

3.5 is finally here!

  • Ubuntu 16.04!
  • PHP 7!
  • MySQL 5.7!
  • NGNIX Option!
  • Go lang in the box
  • PHPUnit in the box
  • Yarn
  • Improved email catching with MailHog
  • Vagrant Share working nicely finally
  • The box's build scripts
  • Customize your own boxes in minutes
  • Generally higher versions of things (Node.js, Ruby, etc.)!

License Required?!!!!?!

Still MIT License for the free version. The free version is still a beast.

Pro will help support the project, let you customize some things a bit more, and will help this project survive. If you're super pissed about this, in school, working for good causes, or hurting for cash, then email me at [email protected] so I can get you setup with Pro no charge.

"Scotch Box Pro" is a paid version of the original Scotch Box. Go Pro Now!

Pro Features

  • NEW OS: Ubuntu-17.10!
  • NEW PHP: PHP 7.2!
  • NEW APACHE: 2.4.29
  • NEW NGINX: 1.13.8
  • NEW RUBY via RVM: 2.5.0
  • NEW NODE via NVM: 8.9.4
  • NEW BUILD SCRIPTS
  • Fixes a MongoDB and PHP bug
  • Makes Laravel routing finally work out of the box with NGINX version
  • Adds Drush (Launcher) even though you should do this through Composer these days
  • Updated WP-CLI version
  • Generally WAY higher versions of everything else

Scotch Box

Documentation

WPDistillery

WPDistillery Logo

WPDistillery is an amazing tool by Flurin Dürst that kickstarts your WordPress installation on Scotch Box. It is actively maintained, has lots of features and gets you started in less than 5 minutes.

All you have to do is clone the repo, customize the configuration file to your needs, and vagrant up. WPDistillery will do the rest:

WPDistillery Preview

To get started, visit wpdistillery.org or check out the Documentation.

More Information

Check-out box.scotch.io to learn more.

Special Thank You

Thanks to anyone who has supported this project.

I was dark on this project for a little bit too long, as I got caught up with work and a million other things. I apologize for slowness to release updates. I'm hoping the Pro version can create a bit more motivation to dedicate time to this. I also finally have the build scripts available for download with the Pro version so you all can start addressing bugs yourselves with your own personalized boxes.

Thanks to the community for bug fixes and provisioning tips. Special shout-out to @maxpou for completely killing it with community responses.

Comments
  • Add Xdebug

    Add Xdebug

    Using this awesome Scotch Box for PHP projects would be more comfortable with Xdebug pre-installed on the VM. I think it's not too hard to install it manually, but it would be nice to add it by default.

    opened by ClementParis016 56
  • Vagrant error on Windows 10

    Vagrant error on Windows 10

    Hi, I have tried to use the scotch box in my windows 10 machine for last two days. Every time I git clone and vagrant up I'm getting the following error:

    Bringing machine 'default' up with 'virtualbox' provider...
    ==> default: Importing base box 'scotch/box'...
    ==> default: Matching MAC address for NAT networking...
    ==> default: Checking if box 'scotch/box' is up to date...
    ==> default: Setting the name of the VM: local-server_default_1457198371829_7646
    ==> default: Clearing any previously set network interfaces...
    ==> default: Preparing network interfaces based on configuration...
        default: Adapter 1: nat
        default: Adapter 2: hostonly
    ==> default: Forwarding ports...
        default: 22 (guest) => 2222 (host) (adapter 1)
    ==> default: Booting VM...
    There was an error while executing `VBoxManage`, a CLI used by Vagrant
    for controlling VirtualBox. The command and stderr is shown below.
    
    Command: ["startvm", "47af6fe7-aa62-4aa6-89d8-e2518f364183", "--type", "headless"]
    
    Stderr: VBoxManage.exe: error: VT-x is disabled in the BIOS for all CPU modes (VERR_VMX_MSR_ALL_VMX_DISABLED)
    VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component ConsoleWrap, interface IConsole
    

    My OS: Windows 10 Varant: 1.8.1 VirtualBox: 5.0.16

    I have removed and reinstalled vagrant and different version of VB. Yet no luck. Can anybody please advise. Many thanks.

    opened by kshamsuddin 50
  • Sequel Pro SSH tunnel

    Sequel Pro SSH tunnel

    I've started up scotch box without issue. But, when I go into sequel pro and try to get into the mysql through ssh I get the following error: "SSH connection failed, The SSH tunnel has unexpectedly closed." My connection settings are below. Name: scotchbox Mysql Host: 127.0.01 User: root Password: root SSH Host: 192.168.33.10 SSH user: vagrant SSH password: vagrant

    opened by sakanaproductions 50
  • Scotch Box 3.0 is missing php7.0-xml

    Scotch Box 3.0 is missing php7.0-xml

    With a fresh Scotch Box 3.0 you need to install php7.0-xml and restart apache2 for Drupal 8 to work:

    sudo apt-get install php7.0-xml
    sudo service apache2 restart
    

    Otherwise Scotch Box 3.0 works fine with Drush and Drupal 8, good job with the new version Nick! :+1:

    This is how I install Drush:

    wget http://files.drush.org/drush.phar;
    php drush.phar core-status;
    chmod +x drush.phar;
    sudo mv drush.phar /usr/local/bin/drush;
    drush init;
    

    NOTE: fix ~/.bashrc - this line is missing a line break:

    # Include Drush bash customizations.
    if [ -f "/home/vagrant/.drush/drush.bashrc" ] ; then
      source /home/vagrant/.drush/drush.bashrc
    fi
    
    

    source ~/.bashrc afterwards, to make it take effect.

    enhancement 
    opened by gitressa 32
  • Environment breaking escalation of #257 - Utilized PHP PPA now offline

    Environment breaking escalation of #257 - Utilized PHP PPA now offline

    I'm splitting this into it's own issue due to it's global impact to all non-stock instances of Scotch Box as a whole. This post assumes you've read my comment on #257.

    tl;dr: installed php PPA is dead, if you wish to alter/add/change modules installed via that ppa, you're gonna have a bad time.

    Since we're at this stand-still and lots of us have work to do, I'd like to bat-signal @whatnickcodes for intervention.

    This is a breaking change to most environments (any reliant on installing/altering php modules), and requires rectification as soon as possible. Due to the build process being effectively closed-source (if it's out there, I sure haven't found it), this will require direct intervention from someone with access to the aforementioned build scripts.

    I am more than happy to help in any way possible. As a longtime sysadmin turned dev, I have no problem assisting with the creation/cleanup/updating. I was rolling my own vagrant customization to stock ubuntu prior to this, effectively creating the same thing until I found Scotch Box ~1.5 years ago. Since then, my team has been using it almost exclusively.

    I cannot seem to find any public resources regarding the creation of the actual vagrant box from it's base machine. I see reference of the environment utilizing Chef, and Packer in the future; though a lack of the scripts themselves.

    Proposed solution going forward

    I'd like to take this time to formally propose open-sourcing the build scripts surrounding the Vagrant "scotch/box".

    With intentional regard to reducing the risk of hard forks/competing solutions, I still feel publishing the build scripts for the box would eliminate the panic and helplessness I'm feeling now. Since the repo would optimally still be under the "scotch-io" GH organization, control (and final say) of included changes would still be handled (I assume) by Nicholas Cerminara.

    The proposed solution would allow Nicholas to maintain the project's technical and creative direction, but remove the need for him to preform all legwork associated with configuration/upkeep. At the same time, fostering community around the development of Scotch Box.

    I recommend that if my suggestion comes to fruition, the box's build process be placed in a separate repository than the example project repo (maintaining the low dependency nature of Scotch Box).

    Note: This issue is created with the intention of solving the problem with the PPA. While I do talk about it at length here, further discussion about the possibility of granting access to the build process should be carried out in a new issue (assumes there's discussion to be had).

    opened by erronjason 30
  • Vagrant was unable to mount VirtualBox shared folders

    Vagrant was unable to mount VirtualBox shared folders

    I am facing an issue : Vagrant was unable to mount VirtualBox shared folders. This is usually because the filesystem "vboxsf" is not available. This filesystem is made available via the VirtualBox Guest Additions and kernel module. Please verify that these guest additions are properly installed in the guest. This is not a bug in Vagrant and is usually caused by a faulty Vagrant box. For context, the command attempted was:

    mount -t vboxsf -o uid=1000,gid=1000 var_www /var/www

    The error output from the command was:

    /sbin/mount.vboxsf: mounting failed with the error: No such file or directory

    How can i solve it.

    opened by mohsinkabir 26
  • Warning: Authentication failure. Retrying

    Warning: Authentication failure. Retrying

    If you update your Scotch Box to version 3.0 with vagrant box update, next time you vagrant up the process will just loop, probably because a password prompt has been introduced with the latest Scotch Box version 3.0.

    Looks like it's time to look for an alternative to Scotch Box, it was great while it lasted ... Anyone got any suggestions for a basic Vagrant LAMP with PHP 7, MySQL, etc.?

    help wanted 
    opened by gitressa 22
  • Laravel installer howto.

    Laravel installer howto.

    The docs should mention how to properly install laravel, and use all the features with scotchbox... as people coming from your sites laravel tutorials will definitely have problems doing so.

    Also basically can't use laravel installer out of the box used composer to install laravel.

    opened by mariuskubilius 20
  • This webpage is not available ERR_CONNECTION_TIMED_OUT

    This webpage is not available ERR_CONNECTION_TIMED_OUT

    So I've been having this issue for a while now. I don't know how but sometimes after a while it would fix itself. At first I thought it was my host but my host is fine. Basically I called it rpgcms.dev and I'm pointing to the default IP.

    If I ssh into the box and curl localhost, it works. If I curl from outside the box, I get a timed out error.

    I'm on Windows running latest scotch box. I searched pretty much everywhere and everyone suggested the following:

    • vagrant provision
    • vagrant reload
    • double check the host file
    • empty your browser cache and try again
    • destroy and vagrant up again

    I tried everything. I have no clue what's going on. It was working fine but I restarted my PC and now just can't connect.

    opened by PatrickJoannisse 19
  • database disappeared

    database disappeared

    I've used Scotchbox for a while for different projects. It's great, but yesterday I encountered a critical problem.

    Recently I was building a Wordpress site, and all was fine. Yesterday I start up that Scotchbox install as usual (via Vagrant Manager under OSX10.11.2) and go to my custom url (example.dev) and I get the initial window you find in Wordpress before a database has been created.

    I immediately halted the Scotchbox VM.

    Opening Virtualbox, I can see (for reasons unknown) three VMs with the name I chose for the project: one whose name I edited in Virtualbox, and the other two with "name_default_xxxxxxxxxxxxxx".

    What I hope is that for some reason Vagrant Up is starting the wrong box, and that in one of those VMs is my database.

    When I start up the VM from Vagrant Manager, and then use Sequel Pro to SSH into the database via my custom private network IP, I can get in, see the database (named scotchbox, as in the default name), open it, but there's no tables there.

    But again, maybe Vagrant is starting up the wrong VM, though how this happened I have no idea.

    So: 1) Is there a way to repoint my Vagrantfile so it starts up, in turn, the other two VMs that show up in Virtualbox? That way, I can start them up and see if my Wordpress site is alive in one of them. 2) Is there any other way of physically tracing my database in my file system, or even the file system of the three VMs? Where does Scotchbox store databases?

    I'm pretty screwed if I lost that database. I didn't (stupidly) take a backup within Wordpress. I can think of no reason or action that would wipe it. But I did update Virtualbox itself, and the Extension Pack. But that's pretty much all I changed recently.

    Worryingly, my other Scotchbox installs appear to be okay.

    Any thoughts, help or guidance much appreciated!

    opened by ianrobertdouglas 18
  • MySQL 5.7, PHP 5.6.15 etc released

    MySQL 5.7, PHP 5.6.15 etc released

    Is it possible to get those things updated?

    PHP is not that critical, but MySQL got some really cool things in (see http://mysqlserverteam.com/whats-new-in-mysql-5-7-generally-available/) so it will be really cool to have it on board.

    enhancement 
    opened by slaFFik 14
  • vagrant up error:

    vagrant up error:

    Mac OS Monterey 12.4. I haven't gotten past this error. Hope someone can help. ERROR: <The IP address configured for the host-only network is not within the allowed ranges. Please update the address used to be within the allowed ranges and run the command again.

    Address: 192.168.33.10 Ranges: 192.168.56.0/21

    Valid ranges can be modified in the /etc/vbox/networks.conf file. For more information including valid format see:

    https://www.virtualbox.org/manual/ch06.html#network_hostonly> End of Error message.

    I visited the website mentioned above, "/etc/vbox" doesn’t exist in Monterey. I found "VirtualBox VMs" In the Users folder. Still can't locate "vbox/networks.conf file to configure the IP Address. Can someone help me with this. Thanks.

    opened by Buildit978 0
  • the php version need be update to 7.4

    the php version need be update to 7.4

    After run the WPDistillery, go to the Wordpress admin page, there is a notification like this:

    Screenshot 2021-12-04 at 23 43 19

    hope someone can help to update the php version settings

    cheers~

    opened by zhangyangsk8 0
  • For NodeJS apps:  nodemon doesn't work

    For NodeJS apps: nodemon doesn't work

    My NodeJS project uses nodemon as a dev dependency. I have a script in my package.json which starts the NodeJS server using nodemon. The utility of using nodemon is that any changes you make to the code and save, it automatically restarts the server. As it is with scotch-box, while running a NodeJS app, you have to manually stop the server then start it again whenever you have saved some changes.

    opened by jasonmcneill 0
  • Invalid link

    Invalid link

    On this page... https://github.com/scotch-io/scotch-box/issues

    where it says the following...

    MISC. STILL NEED HELP? Then visit: github.com/scotch-io/scotch-box/issues

    ...the link is broken. In the underlying HTML code, the broken link looks like this:

    <a href="github.com/scotch-io/scotch-box/issues" style="font-size: 30px;">github.com/scotch-io/scotch-box/issues</a>

    As you can see, there is no http:// at the beginning of the link.

    opened by jasonmcneill 0
  • 403 Forbidden error when using NFS on MacOS Catalina

    403 Forbidden error when using NFS on MacOS Catalina

    Hi,

    I'm experiencing difficulties setting up the NFS on my MacOS Catalina. Everything is working fine on the default settings, I can browse my site, access MySQL etc..

    When reloading the server with NFS enabled everything installs fine, I input the admin password when asked for and the installation is completed, however when I try to reach my website it gives me a 403 forbidden error.

    During install I did get the following message, however I'm not sure if this has anything to do about it:

        default: The guest additions on this VM do not match the installed version of
        default: VirtualBox! In most cases this is fine, but in rare cases it can
        default: prevent things such as shared folders from working properly. If you see
        default: shared folder errors, please make sure the guest additions within the
        default: virtual machine match the version of VirtualBox you have installed on
        default: your host and reload your VM.
        default:
        default: Guest Additions Version: 5.2.6
        default: VirtualBox Version: 6.1
    

    Thank you in advance for your help

    opened by anthonyvdberghe 1
YCOM Impersonate. Login as selected YCOM user 🧙‍♂️in frontend.

YCOM Impersonate Login as selected YCOM user in frontend. Features: Backend users with admin rights or YCOM[] rights, can be automatically logged in v

Friends Of REDAXO 17 Sep 12, 2022
Vagrant Box for Magento 2 Developers

Vagrant project for Magento 2 developers (optimized for Mac, Windows and *nix hosts) ⚠️ Current project is not supported anymore. Please check out htt

Alex Paliarush 452 Oct 18, 2022
Provides a foundation for developing with Magento Commerce in a Vagrant box

Provides a foundation for developing with Magento Commerce in a Vagrant box. The machine is based on CentOS 6.4. ==== List of installed software. Mage

Jason Evans 19 May 12, 2017
Simple Magento 2 Vagrant Box

Magento2 Vagrant Box A simple way to get magento2 up and running. It consists of a Debian Wheezy box provised via Puppet. The provider is Virtual Box.

beeplogic 253 Sep 30, 2022
A complete stack for running Symfony 5 into Docker containers using docker-compose tool and with Certbot for the HTTPS certificate.

?? Docker + PHP 7.4 + MySQL8.0 + Nginx + Certbot(HTTPS) + Symfony 5 Boilerplate ?? Edited from https://github.com/ger86/symfony-docker version -> http

null 6 Nov 9, 2022
Hi Im L, I found a box that I believe it's contain Kira's real ID. for open that box we need to find three keys. let's start looking for them

DeathNote ctf Description are you smart enaugh to help me capturing the three keys for open the box that contain the real ID of kira? Let's start solv

Hamza Elansari 4 Nov 28, 2022
Quickly and easily preview and test your Magento 2 order confirmation page, without hacks or spending time placing new order each time

Preview Order Confirmation Page for Magento 2 For Magento 2.0.x, 2.1.x, 2.2.x and 2.3.x Styling and testing Magento's order confirmation page can be a

MagePal :: Magento Extensions 71 Aug 12, 2022
The full-stack test project for Personnel LTD.

personnel-ltd The full-stack test project for Personnel LTD. Clone and install composer dependencies. $ git clone [email protected]:arsovskidev/personnel

Филип Арсовски 1 Dec 7, 2021
PHP Japanese string helper functions for converting Japanese strings from full-width to half-width and reverse. Laravel Rule for validation Japanese string only full-width or only half-width.

Japanese String Helpers PHP Japanese string helper functions for converting Japanese strings from full-width to half-width and reverse. Laravel Rule f

Deha 54 Mar 22, 2022
Laravel Plans is a package for SaaS apps that need management over plans, features, subscriptions, events for plans or limited, countable features.

Laravel Plans Laravel Plans is a package for SaaS apps that need management over plans, features, subscriptions, events for plans or limited, countabl

ángel 2 Oct 2, 2022
Miniset allows you to create compact sets of fields that either combine into a string of classes, or return a simple array of values

Miniset allows you to create compact sets of fields that either combine into a string of classes, or return a simple array of values. Miniset

Jack Sleight 5 Jun 13, 2022
Michael Pratt 307 Dec 23, 2022
This Statamic addon allows you to modify the tags rendered by the Bard fieldtype, giving you full control over the final HTML.

Bard Mutator This Statamic addon allows you to modify the tags rendered by the Bard fieldtype, giving you full control over the final HTML. You can ad

Jack Sleight 10 Sep 26, 2022
Magento-Vagrant-Puppet-Nginx - Installs magento and a nginx server

Magento-Vagrant-Puppet-Nginx Installs Magento MySQL PHP PHP-FPM Nginx n98-magerun Setup git submodule init git submodule update vagrant up Modify pupp

Christian Münch 61 Aug 10, 2022
Your alter ego object. Takes the best of object and array worlds.

Supporting Opensource formapro\values is an MIT-licensed open source project with its ongoing development made possible entirely by the support of com

FormaPro 31 Jun 25, 2021
World Currency list in PHP constants and in array (Currency::USD)

World Currency list in PHP constants and in array (Currency::USD) If you need to work with currencies in the code and describe each time "USD", "EUR"

Krepysh 4 Jun 27, 2022
A Laravel 9 package that allows you enforce security of your artisan commands by authenticating users before running.

Introduction This package allows you as a developer to restrict who can and cannot run artisan commands, especially in a production environment. For e

YOo Slim 2 Sep 15, 2022
A fully-managed real-time messaging service that allows you to send and receive messages between independent applications.

A fully-managed real-time messaging service that allows you to send and receive messages between independent applications.

Google APIs 58 Dec 23, 2022