# Qual é o fluxo de trabalho recomendado para gerenciar um site Discourse ao vivo?

**URL:** <https://meta.discourse.org/t/what-is-the-recommended-workflow-for-managing-a-live-discourse-site/87566>\
**Category:** Product Support\
**Created:** [Maio 15, 2018, 7:47pm UTC](https://meta.discourse.org/t/what-is-the-recommended-workflow-for-managing-a-live-discourse-site/87566 "2018-05-15T19:47:49Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![j127](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/j127/32/79093_2.png) [@j127](https://meta.discourse.org/u/j127)\
**Post date:** [Maio 15, 2018, 7:47pm UTC](https://meta.discourse.org/t/what-is-the-recommended-workflow-for-managing-a-live-discourse-site/87566/1 "2018-05-15T19:47:49Z")

</div>

I’m trying to figure out a good workflow for managing a live Discourse site and have a few more questions:

## 1. Development Environment

I have Discourse running on my laptop (Ubuntu 16.04), but the cloned Github repo is missing files like `app.yml`. Some of the tutorials here in the forum mention that I should edit the `app.yml` file, but it doesn’t exist in my development versions. How do people manage that difference on production sites? Are the local development versions always different codebases than the live site? Is there a recommended way to have a staging environment for the live codebase too?

## 2. Backups and Server Migration

I put an experimental Discourse forum online to test workflows before migrating my main site. When I backup the site through the UI, I get the database and uploaded files. How do people generally backup the rest of the site? What else needs to be backed up if I want to rebuild the site on a new server in the event of a disaster (like getting hacked) on the original server? Do I need to backup `app.yml` or any other files to rebuild it?

## 3. Upgrades

How do I upgrade a live site? If I click the upgrade button, the live site upgrades, but my local development version doesn’t update. Should I update the sites locally with Git and then push the changes to the live server by creating another `remote` setting in a fork of the main Discourse repo and working in a custom branch? Or do people generally have a development version that is a completely different installation of Discourse?

## 4. Plugins

Is it correct that I should write my plugins in separate repos, clone them to the live server, and then symlink them in the `plugins` directory? Or should I use `app.yml` to install them? Different posts in the forum here seem to suggest different things.

---

_[View the full topic](https://meta.discourse.org/t/what-is-the-recommended-workflow-for-managing-a-live-discourse-site/87566)._
