Template:Installation/GuideVersion: Difference between revisions

From diaspora* project wiki
mNo edit summary
(Remove whitespace)
 
(22 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<div style="display:none;">
<noinclude><div style="display:none;">
{{#vardefine:DB|{{#urlget:db|postgres}}}}
{{#vardefine:DB|{{#urlget:db|postgres}}}}
{{#vardefine:mode|{{#urlget:mode|production}}}}
{{#vardefine:mode|{{#urlget:mode|production}}}}
{{#vardefine:mode_prefix|{{#ifeq: {{#var:mode}}|development||RAILS_ENV={{#var:mode}} <nowiki/>}}}}
{{#vardefine:mode_prefix|{{#ifeq: {{#var:mode}}|development||RAILS_ENV={{#var:mode}} <nowiki/>}}}}
{{#vardefine:env_string|{{#var:mode_prefix}}}}}}
{{#vardefine:env_string|{{#var:mode_prefix}}}}}}
</div>
</div></noinclude>
 
== Versions of this guide ==
== Versions of this guide ==


{{Serious|Make sure to use the correct version of the guide, see below.}}
{{Serious|Make sure to use the correct version of the guide, see below.}}


<div class="toccolours mw-collapsible mw-collapsed" style="float:right; width: 40%; margin: 5pt;">
'''» Help me decide!'''
<div class="mw-collapsible-content">
In '''Production''' mode, your pod is configured to deal with high load for everyday usage. This is recommended for a pod you want to actually use.
In '''Development''' mode, your pod is configured for development. This is recommended ony for development contributors of diaspora* which use the pod only locally for testing purposes.
For '''Database''', choose PostgreSQL unless you already have an existing database server that you want to re-use. We recommend an isolated PostgreSQL installation exclusively for your pod.
</div>
</div>
The current guide is for a '''{{#switch: {{#var:mode}}|production=production|development=development}}''' setup
The current guide is for a '''{{#switch: {{#var:mode}}|production=production|development=development}}''' setup
with  '''{{#switch: {{#var:DB}}|mysql=MySQL|postgres=PostgreSQL|mariadb=MariaDB}}''' as database.
with  '''{{#switch: {{#var:DB}}|mysql=MySQL|postgres=PostgreSQL|mariadb=MariaDB}}''' as database.
Line 15: Line 24:
You can change them below:
You can change them below:


Running mode: {{#ifeq: {{#var:mode}}|production|'''Production'''|[[{{FULLPAGENAME}}?db={{#var:DB}}&mode=production|Production]]}} | {{#ifeq: {{#var:mode}}|development|'''Development'''|[[{{FULLPAGENAME}}?db={{#var:DB}}&mode=development|Development]]}}<br />
Running mode: {{#ifeq: {{#var:mode}}
Database: {{#ifeq: {{#var:DB}}|mysql|'''MySQL'''|[[{{FULLPAGENAME}}?db=mysql&mode={{#var:mode}}|MySQL]]}} {{!}} {{#ifeq: {{#var:DB}}|postgres|'''PostgreSQL'''|[[{{FULLPAGENAME}}?db=postgres&mode={{#var:mode}}|PostgreSQL]]}} {{!}} {{#ifeq: {{#var:DB}}|mariadb|'''MariaDB'''|[[{{FULLPAGENAME}}?db=mariadb&mode={{#var:mode}}|MariaDB]]}}
| production
 
  | '''Production'''
<div class="toccolours mw-collapsible mw-collapsed">
  | <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}}}?db={{#var:DB}}&mode=production#Versions_of_this_guide Production]</span>
'''Help me decide!'''
}} | {{#ifeq: {{#var:mode}}
<div class="mw-collapsible-content">
| development
You need to choose if you want a production setup or development setup. Diaspora has three development trees: master, stable and develop. The master tree always contains the current release. The stable tree is where new features and bug fixes are added before a new minor version is released. The develop tree is where new features and bug fixes are added before a new major version is released. Therefore if you want a development setup you should run from develop. But it isn't guaranteed to be in a good state, so it's not recommended to run a production setup from it.
  | '''Development'''
 
  | <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}}}?db={{#var:DB}}&mode=development#Versions_of_this_guide Development]</span>
Diaspora is written in Ruby on Rails and therefore knows different running modes. These have nothing to do with running from the master or the develop tree. Nonetheless we recommend the development mode for development setups and production mode for production setups. The difference is, apart from a slightly different default configuration, speed. The development mode reloads the code on each request, so it speeds up your development. The production mode doesn't do that, so pages load significantly faster. That's the only major difference you need to care about. To emphasize it one more time: Running a production setup in development mode gains you nothing.
}}<br />


Lastly you can choose between running on MySQL/MariaDB or PostgreSQL, in our experience PostgreSQL achieves a better performance.
Database:
</div>
{{#ifeq: {{#var:DB}}
</div>
| postgres
  | '''PostgreSQL'''
  | <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}}}?db=postgres&mode={{#var:mode}}#Versions_of_this_guide PostgreSQL]</span>
}} {{!}} {{#ifeq: {{#var:DB}}
| mysql
  | '''MySQL  (deprecated)'''
  | <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}}}?db=mysql&mode={{#var:mode}}#Versions_of_this_guide MySQL] (deprecated)</span>
}} {{#ifeq: {{#var:dist}}{{#var:version}}|UbuntuPrecise||{{!}} {{#ifeq: {{#var:DB}}
| mariadb
  | '''MariaDB (deprecated)'''
  | <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}}}?db=mariadb&mode={{#var:mode}}#Versions_of_this_guide MariaDB] (deprecated)</span>
}}}}
{{#ifeq: {{#var:DB}}|mysql|{{Serious|You have selected MySQL as your preferred database engine. While diaspora* still supports MySQL-based setups, MySQL support is deprecated, and new pods are strongly encouraged to use PostgreSQL instead.}}|}}
{{#ifeq: {{#var:DB}}|mariadb|{{Serious|You have selected MariaDB as your preferred database engine. While diaspora* still supports MariaDB-based setups, MariaDB support is deprecated, and new pods are strongly encouraged to use PostgreSQL instead.}}|}}
<noinclude>[[Category:Installation-Templates]]</noinclude>

Latest revision as of 00:57, 2 August 2022


}}

Versions of this guide

WarningWarning:Make sure to use the correct version of the guide, see below.

» Help me decide!

In Production mode, your pod is configured to deal with high load for everyday usage. This is recommended for a pod you want to actually use.

In Development mode, your pod is configured for development. This is recommended ony for development contributors of diaspora* which use the pod only locally for testing purposes.

For Database, choose PostgreSQL unless you already have an existing database server that you want to re-use. We recommend an isolated PostgreSQL installation exclusively for your pod.

The current guide is for a production setup with PostgreSQL as database.

You can change them below:

Running mode: Production | Development

Database: PostgreSQL | MySQL (deprecated) | MariaDB (deprecated)