Automated Backups to other Destinations Besides Amazon S3


(Jonathan Wexler) #1

Continuing the discussion from Hot off the presses, automated backup support!:

I also will not use S3 - what is that - AWS? I would like to use Dropbox or even some other backup solution as I find AWS totally convoluted.

How can I create a process where backups are sent to other destinations?

I will have to experiment, but this was my initial concern.

(Jeff Atwood) #2

You can make automatic local (on your server) backups and download them from your web browser to whatever destination you like.

(Jonathan Wexler) #3

Okay that answers my question - thanks.

(Kane York) #4

For SFTP/SCP, they’ll be dropped in /var/discourse/shared/standalone/backups/default.

(Jonathan Wexler) #5

I still think it is too complicated to use non-Amazon storage. Someone should make a better solution for this. I have to automate the drops on the server and then script it to other services - is something like that correct?

So the steps are:

  1. Automatic backups from the server to: /var/discourse/shared/standalone/backups/default
  2. Then, I have to get some kind of API or token access to the other third party service.
  3. Then script it through sftp or scp or any other secure protocol.

Why not just include an option to send to other storage services on this page?

(Kane York) #6

Not quite what Discourse actually sees, but close enough.

Nope, you can skip #2. Just run a cronjob to grab the latest one.

(Jonathan Wexler) #7

Ya seems simple to do actually.

Also, because Discourse is in a Docker container, can I just automate a container upload to Docker Hub periodically?

And a download sync of the Discource Docker container would be useful - this has me thinking of a much better solution that Amazon S3.

(Kane York) #8

In order to do that, you need to:

  • ./launcher bootstrap app on a build server
  • upload (or docker save) THAT container, which is specific to YOUR site
  • download or docker load that container on the destination

It’s a lot of work for mostly no gain, except when you’re on a scale similar to the hosting.

(Jeff Atwood) #9

PRs are welcome in this area. If someone wants to build a FTP backup transfer plugin, or a Dropbox one, or Google Drive, that’d be fine.

(Jonathan Wexler) #10

There should be a drop-drop to select which cloud storage to backup to automatically.

See screenshot below:

I followed how the Tagger plugin incorporation did not happen right, so when @codinghorror simply states to add it as a pull request it seems like he is pushing it aside, when, for example, the Tagger plugin was also really import and is still quite cumbersome to get working.

Something like automatic backups should be given a much higher priority.

I also feel features should be speced right here in this Discourse forum, not in GitHub, which, after all, is a separate website in reality.

If we map out the process, say in LucidChart, and just post a screenshot of it here, I think any software architect would understand how to build it.

@sam I have been a technical writer for many years, and the first thing to get clear is the language of the project, which is a lesson I learnt especially here in Montreal as we work in French and English and produce a lot of software.

It is very simplistic to think everyone wants to rely on Amazon storage when there are a lot of other very good providers, both US based, and worldwide.

Something like this:

And also an easy option to backup the whole Docker container to Docker Up should be done:

(Sam Saffron) #12

He means a Pull Request, which in turn mean is somebody cares to write the computer code to make it happen then we are fine with that.

(Jonathan Wexler) #13

I submitted it to GitHub.

(Jeff Atwood) #14

Sorry, misunderstanding, pull request means you do the work to build the feature by writing the code to implement it. Or paying someone else to.

(Jonathan Wexler) #15

Why is it called pull request then? What is being pulled?

You mean you pull the code from Github, do the work, then submit it for community approval?

Peut-être on doit changer la terminologie un peut car les mots technique sont très mal construit pour les processus très technique.

(Mittineague) #16

It’s a github thing

IMHO if I am submitting something “push” does seem more appropriate.

Why is it vagrant up but not vagrant down?
Or if vagrant halt why not vagrant start?

Why do arrays start at “0” instead of “1”?

Ah, the logic of techies is more than enough to confound :wink:

(Jonathan Wexler) #17

Yes I completely agree. They should have read 0 : The Biography of a Dangerous Idea.

Here’s a pic, and let’s see if anyone can explain this with technical language:

(Régis Hanol) #18

I recommend that you read the tutorial about how to use pull requests.

The TL;DR is that you write some code and then ask the owners of the repository to pull your code in.

Pull request” est un terme connu par tous les développeurs qui utilisent GitHub :wink:

Pull request” is a well known term by all the developers who uses GitHub :wink:

(Jeff Atwood) #19

To be clear, I think multiple backup destinations is a good idea, we just have no bandwidth to work on it at the moment and none of our paying customers are specifically asking for it.

(Rafael dos Santos Silva) #20