<p>I'd recommend against DreamHost, FWIW -> <a href="https://nystudio107.com/blog/web-hosting-for-agencies-freelancers" rel="nofollow noreferrer">How Agencies &amp; Freelancers Should Do Web Hosting</a></p>

<p>In any event, to do what you want to do, you'll need <em>something</em> that triggers on that when a push to GitHub or what have you happens. If you use Forge as a provisioner, that comes baked in.</p>

<p>If not, you can use a service like <a href="http://buddy.works/" rel="nofollow noreferrer">buddy.works</a> or the like to do it for you. This is discussed a bit in the <a href="https://nystudio107.com/blog/setting-up-a-craft-cms-3-project" rel="nofollow noreferrer">Setting up a New Craft CMS 3 Project</a> article under the <strong>DEPLOYING CRAFT CMS</strong> section.</p>

<p>We also discuss it on the <a href="https://devmode.fm/episodes/website-deployment-without-tears" rel="nofollow noreferrer">Website Deployment without Tears</a> podcast on <a href="https://devmode.fm/" rel="nofollow noreferrer">devMode.fm</a></p>

<p>...but the general idea is that <em>something</em> has to receive a notification from GitHub when you push to a particular branch, to kick off the deployment process for you. Here's what my deployment script looks like on Forge: <a href="https://twitter.com/nystudio107/status/991416047960981506" rel="nofollow noreferrer">My deploy script for Forge</a></p>

CC BY-SA 4.0
2018-07-30T20:07:44.797Z
2018-07-30T20:07:44.797Z
andrew.welch
<p>I was recently able to get Craft CMS installed on my local server and I am using MAMP to host locally as I develop the site. </p>

<p>I have never set up a site on my own, so I was hoping someone could give me some instructions on how I eventually post my site. </p>

<p>I already have a domain registered through DreamHost and I am prepared to set up a managed server or VPS, but how will this work in the end?</p>

<p>Ideally, I would have things set up so that I could push everything to github and the site would update automatically. I've used GitHub pages before, so this is the process I'm most familiar with. </p>

<p>Thanks</p>

<deployment><workflow><hosting><git>
How to Deploy CraftCMS to Dreamhost w/Github
# How to Deploy CraftCMS to Dreamhost w/Github

(Asked by: username_0 on 2018-07-30)

I was recently able to get Craft CMS installed on my local server and I am using MAMP to host locally as I develop the site.

I have never set up a site on my own, so I was hoping someone could give me some instructions on how I eventually post my site.

I already have a domain registered through DreamHost and I am prepared to set up a managed server or VPS, but how will this work in the end?

Ideally, I would have things set up so that I could push everything to github and the site would update automatically. I've used GitHub pages before, so this is the process I'm most familiar with.

Thanks

**Tags:** deployment, workflow, hosting, git

---

## 1 answers

### Answer by username_1 on 2018-07-30. Score: 1

I'd recommend against DreamHost, FWIW -> [How Agencies & Freelancers Should Do Web Hosting](https://nystudio107.com/blog/web-hosting-for-agencies-freelancers)

In any event, to do what you want to do, you'll need *something* that triggers on that when a push to GitHub or what have you happens. If you use Forge as a provisioner, that comes baked in.

If not, you can use a service like [buddy.works](http://buddy.works/) or the like to do it for you. This is discussed a bit in the [Setting up a New Craft CMS 3 Project](https://nystudio107.com/blog/setting-up-a-craft-cms-3-project) article under the **DEPLOYING CRAFT CMS** section.

We also discuss it on the [Website Deployment without Tears](https://devmode.fm/episodes/website-deployment-without-tears) podcast on [devMode.fm](https://devmode.fm/)

...but the general idea is that *something* has to receive a notification from GitHub when you push to a particular branch, to kick off the deployment process for you. Here's what my deployment script looks like on Forge: [My deploy script for Forge](https://twitter.com/nystudio107/status/991416047960981506)


---

