<p>Out of the box, macOS comes with tools to run a website locally. But depending on your needs, you may find it limiting or daunting to get started.</p>

<p>You can Google pretty good guides for how to <a href="https://www.google.com/search?q=run+a+website+locally+with+macOS" rel="nofollow noreferrer">run a website locally with macOS</a>. But they differ depending on your OS version. Here's a guide to setting up on macOS Sierra: <a href="https://coolestguidesontheplanet.com/get-apache-mysql-php-and-phpmyadmin-working-on-macos-sierra/" rel="nofollow noreferrer">Get Apache, MySQL, PHP and phpMyAdmin working on macOS Sierra</a>.</p>

<p><a href="https://clickontyler.com/virtualhostx/" rel="nofollow noreferrer">VirtualHostX 7</a> is a relatively simple alternative to MAMP for running multiple local websites. It's not free, but it wraps up Vagrant, VirtualBox, Apache server, PHP and I think MySQL in one package. It's separate from the macOS built-in Apache server so your setup won't change with future macOS updates and potentially break how your local website runs.</p>

<p>I believe VirtualHostX 7 creates one Vagrant box to host all of your websites. I don't think it's possible to use multiple versions of PHP tho like <a href="https://www.mamp.info/en/mamp-pro/#multiphp" rel="nofollow noreferrer">MAMP Pro</a> allows you to do. This can be helpful if you're working on Site A with PHP 7, but Site B is still running on an older web server with PHP 5.6 so you'll want to match your local environment to that for testing.</p>

<p>Another alternative is <a href="https://www.vagrantup.com/" rel="nofollow noreferrer">Vagrant</a>. If you go the route of creating individual Vagrant boxes for each website, the advantage is that you can create a virtual machine that exactly replicates the conditions of your remote web server. That can help eliminate the troubleshooting you might have to do when deploying code to a server environment that doesn't exactly match yours (like "why isn't imagemagick working?"). But like Ian said, it's resource intensive so you'll likely be constantly booting up and shutting down different Vagrant boxes that are using a bunch of your CPU and RAM.</p>

<p>The same software maker as VirtualHostX makes a Vagrant box manager also called <a href="https://clickontyler.com/hobo/" rel="nofollow noreferrer">Hobo</a>.</p>

<p>If you would prefer Docker, <a href="https://github.com/gabrielmoreira/craftman" rel="nofollow noreferrer">Craftman</a> is a project to automate the setup Craft installs in Docker containers. But unless you have a good reason to use Docker, like you want to use it in production, I might stay away from it. It adds another layer of complexity.</p>

CC BY-SA 3.0
2017-02-21T22:55:27.897Z
2017-02-21T22:55:27.897Z
Alex Roper
<p>It depends what you are most comfortable with. PHP and Apache are shipped with macOS by standard but you'd still need to install and configure MySQL (or MariaDB etc), along with manual virtual host configuration. </p>

<p>MAMP makes it much easier but sandboxing it all in one easy to install package with a GUI so if you're not comfortable with the command line and the manual configuration then it's a good option. </p>

<p>If you are a little comfortable with the command line and want a minimalist setup then <a href="https://laravel.com/docs/5.4/valet" rel="noreferrer">Laravel Valet</a> could be worth a try. It is a wrapper which orchestrates installing the required components via <a href="https://brew.sh/" rel="noreferrer">Homebrew</a> which enables you to just create a new folder in your web root folder with a <code>.dev</code> extension and then be able to view it in the browser. This can be a nice in between.</p>

<p>For more of an isolation you can opt for virtual machines and Vagrant images for example which run a virtual OS with all pre-requisites installed. It can be a little resource hungry however. Alternatively there is docker which provides a containerised environment (much the same but without the full OS layer).</p>

<p>It really goes down to what you're more comfortable with but any of the above will get you up and running with Craft.</p>

CC BY-SA 3.0
2017-02-20T15:40:09.683Z
2017-02-20T15:40:09.683Z
Ian Young
<p>I want to install Craft in home directory in mac. I don't like to use MAMP as local server.</p>

<p>Is to possible to install without using MAMP? I use gulp and webpack in home directory.</p>

CC BY-SA 3.0
2017-02-20T14:39:40.707Z
You need PHP interpreter to run Craft. You can use docker or vagrant as an alternative to MAMP. http://craftcms.stackexchange.com/questions/4634/running-craft-with-docker-or-something-similar
Krzysztof Boduch
<php><installation>
Installing Craft without MAMP
# Installing Craft without MAMP

(Asked by: username_0 on 2017-02-20)

I want to install Craft in home directory in mac. I don't like to use MAMP as local server.

Is to possible to install without using MAMP? I use gulp and webpack in home directory.

**Tags:** php, installation
> **Comments:**
> **username_1**: You need PHP interpreter to run Craft. You can use docker or vagrant as an alternative to MAMP. http://craftcms.stackexchange.com/questions/4634/running-craft-with-docker-or-something-similar  

---

## 2 answers

### Answer by username_3 on 2017-02-20. Score: 4 | Accepted answer

It depends what you are most comfortable with. PHP and Apache are shipped with macOS by standard but you'd still need to install and configure MySQL (or MariaDB etc), along with manual virtual host configuration.

MAMP makes it much easier but sandboxing it all in one easy to install package with a GUI so if you're not comfortable with the command line and the manual configuration then it's a good option.

If you are a little comfortable with the command line and want a minimalist setup then [Laravel Valet](https://laravel.com/docs/5.4/valet) could be worth a try. It is a wrapper which orchestrates installing the required components via [Homebrew](https://brew.sh/) which enables you to just create a new folder in your web root folder with a `.dev` extension and then be able to view it in the browser. This can be a nice in between.

For more of an isolation you can opt for virtual machines and Vagrant images for example which run a virtual OS with all pre-requisites installed. It can be a little resource hungry however. Alternatively there is docker which provides a containerised environment (much the same but without the full OS layer).

It really goes down to what you're more comfortable with but any of the above will get you up and running with Craft.


---

### Answer by username_2 on 2017-02-21. Score: 3

Out of the box, macOS comes with tools to run a website locally. But depending on your needs, you may find it limiting or daunting to get started.

You can Google pretty good guides for how to [run a website locally with macOS](https://www.google.com/search?q=run+a+website+locally+with+macOS). But they differ depending on your OS version. Here's a guide to setting up on macOS Sierra: [Get Apache, MySQL, PHP and phpMyAdmin working on macOS Sierra](https://coolestguidesontheplanet.com/get-apache-mysql-php-and-phpmyadmin-working-on-macos-sierra/).

[VirtualHostX 7](https://clickontyler.com/virtualhostx/) is a relatively simple alternative to MAMP for running multiple local websites. It's not free, but it wraps up Vagrant, VirtualBox, Apache server, PHP and I think MySQL in one package. It's separate from the macOS built-in Apache server so your setup won't change with future macOS updates and potentially break how your local website runs.

I believe VirtualHostX 7 creates one Vagrant box to host all of your websites. I don't think it's possible to use multiple versions of PHP tho like [MAMP Pro](https://www.mamp.info/en/mamp-pro/#multiphp) allows you to do. This can be helpful if you're working on Site A with PHP 7, but Site B is still running on an older web server with PHP 5.6 so you'll want to match your local environment to that for testing.

Another alternative is [Vagrant](https://www.vagrantup.com/). If you go the route of creating individual Vagrant boxes for each website, the advantage is that you can create a virtual machine that exactly replicates the conditions of your remote web server. That can help eliminate the troubleshooting you might have to do when deploying code to a server environment that doesn't exactly match yours (like "why isn't imagemagick working?"). But like Ian said, it's resource intensive so you'll likely be constantly booting up and shutting down different Vagrant boxes that are using a bunch of your CPU and RAM.

The same software maker as VirtualHostX makes a Vagrant box manager also called [Hobo](https://clickontyler.com/hobo/).

If you would prefer Docker, [Craftman](https://github.com/gabrielmoreira/craftman) is a project to automate the setup Craft installs in Docker containers. But unless you have a good reason to use Docker, like you want to use it in production, I might stay away from it. It adds another layer of complexity.


---

