diff options
author | Shel R <Yiskah.Raphen@gmail.com> | 2017-04-07 22:17:53 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-07 22:17:53 -0400 |
commit | 3e8c1a1c36b9d5cba96968d351cae2e2eefc3d22 (patch) | |
tree | 691bb470a0811e28b2ebd5d32255048a7df763b3 /docs/Running-Mastodon | |
parent | 7aede8e72092fa2b8846f2212dff411247a841b1 (diff) | |
parent | 9fd8bbe15c18e0931ccf2c00fb6a1e69acfb0b0c (diff) |
Merge branch 'master' into master
Diffstat (limited to 'docs/Running-Mastodon')
-rw-r--r-- | docs/Running-Mastodon/Administration-guide.md | 2 | ||||
-rw-r--r-- | docs/Running-Mastodon/Heroku-guide.md | 53 | ||||
-rw-r--r-- | docs/Running-Mastodon/Production-guide.md | 4 | ||||
-rw-r--r-- | docs/Running-Mastodon/Scalingo-guide.md | 4 | ||||
-rw-r--r-- | docs/Running-Mastodon/Vagrant-guide.md | 4 |
5 files changed, 53 insertions, 14 deletions
diff --git a/docs/Running-Mastodon/Administration-guide.md b/docs/Running-Mastodon/Administration-guide.md index dd69eb303..09b0f1df1 100644 --- a/docs/Running-Mastodon/Administration-guide.md +++ b/docs/Running-Mastodon/Administration-guide.md @@ -7,7 +7,7 @@ So, you have a working Mastodon instance... now what? The following rake task: - rake mastodon:make_admin USERNAME=alice + RAILS_ENV=production bundle exec rails mastodon:make_admin USERNAME=alice Would turn the local user "alice" into an admin. diff --git a/docs/Running-Mastodon/Heroku-guide.md b/docs/Running-Mastodon/Heroku-guide.md index 0de26230c..269bc6331 100644 --- a/docs/Running-Mastodon/Heroku-guide.md +++ b/docs/Running-Mastodon/Heroku-guide.md @@ -3,13 +3,50 @@ Heroku guide [![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://dashboard.heroku.com/new?button-url=https://github.com/tootsuite/mastodon&template=https://github.com/tootsuite/mastodon) -Mastodon can theoretically run indefinitely on a free [Heroku](https://heroku.com) app. It should be noted this has limited testing and could have unpredictable results. +Mastodon can be run on a free [Heroku](https://heroku.com) app. It should be +noted this has limited testing and could have unpredictable results. -1. Click the above button. -2. Fill in the options requested. - * You can use a .herokuapp.com domain, which will be simple to set up, or you can use a custom domain. If you want a custom domain and HTTPS, you will need to upgrade to a paid plan (to use Heroku's SSL features), or set up [CloudFlare](https://cloudflare.com) who offer free "Flexible SSL" (note: CloudFlare have some undefined limits on WebSockets. So far, no one has reported hitting concurrent connection limits). - * You will want Amazon S3 for file storage. The only exception is for development purposes, where you may not care if files are not saved. Follow a guide online for creating a free Amazon S3 bucket and Access Key, then enter the details. - * If you want your Mastodon to be able to send emails, configure SMTP settings here (or later). Consider using [Mailgun](https://mailgun.com) or similar, who offer free plans that should suit your interests. -3. Deploy! The app should be set up, with a working web interface and database. You can change settings and manage versions from the Heroku dashboard. +## Basic setup -You may need to use the `heroku` CLI application to run `USERNAME=yourUsername rails mastodon:make_admin` to make yourself an admin. +Click the button above to start creating a Heroku app with the Mastodon repo as +the source. This tells Heroku to use the `app.json` file which does things like +prompt for config variables, set up the right buildpacks, run a postdeploy task, +and add the appropriate addons. + +If you don't use the deploy button and app.json approach, you will need to do +some of that manually. + +## Domain names and SSL + +You can add your domain name to the Heroku app's setting, and then also use +Heroku's (free) auto renewal program for Lets Encrypt certificates, by +requesting a cert from the settings screen. You'll have to point your hostname +DNS at Heroku using the values heroku gives you on this screen, using whatever +method is appropriate for your DNS setup. + +You should set the Heroku config vars of `LOCAL_DOMAIN` to your hostname, and +`LOCAL_HTTPS` to "true" as well. + +## Email + +Consider using [Mailgun](https://mailgun.com) or similar, who offer free plans +that should suit your interests. Look in `production.rb` to see which config +variables need to be set on Heroku for outgoing email to work. + +## File storage + +You will want Amazon S3 for file storage. The only exception is for development +purposes, where you may not care if files are not saved. Follow a guide online +for creating a free Amazon S3 bucket and Access Key, then enter the details. + +## Deployment + +You can deploy from the Heroku web interface or from the command line. Run: + + `heroku run rails db:migrate` + +after you first deploy to set up the first database. + +To make yourself an admin, you may need to use the `heroku` CLI application after creating an account online: + + `heroku rake mastodon:make_admin USERNAME=yourUsername` diff --git a/docs/Running-Mastodon/Production-guide.md b/docs/Running-Mastodon/Production-guide.md index 90e9c0dea..af21af546 100644 --- a/docs/Running-Mastodon/Production-guide.md +++ b/docs/Running-Mastodon/Production-guide.md @@ -24,7 +24,7 @@ server { ssl_protocols TLSv1.2; ssl_ciphers EECDH+AESGCM:EECDH+AES; - ssl_ecdh_curve secp384r1; + ssl_ecdh_curve prime256v1; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; @@ -90,7 +90,7 @@ It is recommended to create a special user for mastodon on the server (you could sudo apt-get install imagemagick ffmpeg libpq-dev libxml2-dev libxslt1-dev nodejs file git curl curl -sL https://deb.nodesource.com/setup_4.x | sudo bash - - apt-get intall nodejs + apt-get install nodejs sudo npm install -g yarn ## Redis diff --git a/docs/Running-Mastodon/Scalingo-guide.md b/docs/Running-Mastodon/Scalingo-guide.md index 6552056a8..9329f753e 100644 --- a/docs/Running-Mastodon/Scalingo-guide.md +++ b/docs/Running-Mastodon/Scalingo-guide.md @@ -8,6 +8,6 @@ Scalingo guide * You can use a .scalingo.io domain, which will be simple to set up, or you can use a custom domain. * You will want Amazon S3 for file storage. The only exception is for development purposes, where you may not care if files are not saved. Follow a guide online for creating a free Amazon S3 bucket and Access Key, then enter the details. * If you want your Mastodon to be able to send emails, configure SMTP settings here (or later). Consider using [Mailgun](https://mailgun.com) or similar, who offer free plans that should suit your interests. -3. Deploy! The app should be set up, with a working web interface and database. You can change settings and manage versions from the Heroku dashboard. +3. Deploy! The app should be set up, with a working web interface and database. You can change settings and manage versions from the Scalingo dashboard. -You may need to use the `scalingo` CLI application to run `USERNAME=yourUsername rails mastodon:make_admin` to make yourself an admin. +To make yourself an admin, you can use the `scalingo` CLI: `scalingo run -e USERNAME=yourusername rails mastodon:make_admin`. diff --git a/docs/Running-Mastodon/Vagrant-guide.md b/docs/Running-Mastodon/Vagrant-guide.md index b24f14e83..83a892408 100644 --- a/docs/Running-Mastodon/Vagrant-guide.md +++ b/docs/Running-Mastodon/Vagrant-guide.md @@ -17,6 +17,8 @@ To create and provision a new virtual machine for Mastodon development: cd mastodon vagrant up +**Note:** On Linux hosts, you will need to [enable NFS support](https://www.vagrantup.com/docs/synced-folders/nfs.html). + Running `vagrant up` for the first time will run provisioning, which will: - Download the Ubuntu 14.04 base image, if there isn't already a copy on your machine @@ -61,4 +63,4 @@ To run the `rspec` tests and `rubocop` style checker, you may either: ## Support/help -If you are confused, or having any issues with the above, the Mastodon IRC channel ( irc.freenode.net #mastodon ) is a good place to find assistance. \ No newline at end of file +If you are confused, or having any issues with the above, the Mastodon IRC channel ( irc.freenode.net #mastodon ) is a good place to find assistance. |