extended docs/mastodon_on_arch.md

This commit is contained in:
Trent Palmer 2017-08-22 03:02:27 -07:00
parent 46756f9ae4
commit 93dc4e7495
5 changed files with 48 additions and 17 deletions

View File

@ -57,3 +57,16 @@ if that is where assets are being stored, but it seems ok to delete
In `~/live/.env.production`, `SINGLE_USER_MODE=false` has to be set
to `false` until at least one user is created, or the web service won't
even start. (Also `chmod 755 ~/`)
## The Different Documentation for Updating
[Updating Guide](https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Updating-Mastodon-Guide.md)
I really think that when you update, you're going to want to read through the installation guide,
then compare it to the older version, then read through the upgrade guide. And finally, I think
you want to really comb through the ***Upgrade notes*** in the
[Release Notes](https://github.com/tootsuite/mastodon/releases)
[Installation Guide](https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Production-guide.md)
(bare metal)
You may also find this
[Older Installation Guide](https://github.com/tootsuite/documentation/blob/dd52795d7d1f5cd68b3cfb763321d3083db9b28b/Running-Mastodon/Production-guide.md)
useful for reference.

View File

@ -234,5 +234,5 @@
<!--
MkDocs version : 0.16.3
Build Date UTC : 2017-08-21 11:44:44
Build Date UTC : 2017-08-22 10:01:29
-->

View File

@ -97,6 +97,8 @@
<li><a class="toctree-l3" href="#other-observations">Other Observations</a></li>
<li><a class="toctree-l3" href="#the-different-documentation-for-updating">The Different Documentation for Updating</a></li>
</ul>
@ -218,6 +220,17 @@ if that is where assets are being stored, but it seems ok to delete
<p>In <code>~/live/.env.production</code>, <code>SINGLE_USER_MODE=false</code> has to be set
to <code>false</code> until at least one user is created, or the web service won't
even start. (Also <code>chmod 755 ~/</code>)</p>
<h2 id="the-different-documentation-for-updating">The Different Documentation for Updating</h2>
<p><a href="https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Updating-Mastodon-Guide.md">Updating Guide</a><br />
I really think that when you update, you're going to want to read through the installation guide,
then compare it to the older version, then read through the upgrade guide. And finally, I think
you want to really comb through the <strong><em>Upgrade notes</em></strong> in the
<a href="https://github.com/tootsuite/mastodon/releases">Release Notes</a></p>
<p><a href="https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Production-guide.md">Installation Guide</a>
(bare metal)<br />
You may also find this
<a href="https://github.com/tootsuite/documentation/blob/dd52795d7d1f5cd68b3cfb763321d3083db9b28b/Running-Mastodon/Production-guide.md">Older Installation Guide</a>
useful for reference.</p>
</div>
</div>

View File

@ -302,7 +302,7 @@
},
{
"location": "/mastodon_on_arch/",
"text": "Some Observations About Installing Mastodon on Arch.\n\n\nNginx\n\n\nFrom the \nProduction Guide\n\nyou can copy the example nginx.conf file to \n/etc/nginx/sites-enabled/some_arbitrary.conf\n,\nand then add the following to \n/etc/nginx/nginx.conf\n in the http section,\nthis with a fresh install of nginx with the default configuration file.\n\n\n# /etc/nginx/nginx.conf \nhttp {\n include sites-enabled/*;\n}\n\n\n\n\nInstalling the Dependancies\n\n\npacman -S certbot nginx libxml2 imagemagick ffmpeg git yarn npm python2 oidentd\n\n\n\n\n# I'm guessing here\npacman -S libpqxx libxslt protobuf protobuf-c\n\n\n\n\n\n\nI'm assuming base-devel is installed\n\n\npython2 seems to be required to run \nyarn install\n command later on\n\n\noidentd seems to be a usable replacement for pident\n\n\nlibpqxx pulls in postgresql-libs\n\n\nfile is already installed\n\n\ncurl is already installed\n\n\nruby-build and rbenv are installable from aur\n\n\nalso postgresql and redis unless, those are in another container or whatever.\n\n\n\n\nOther Observations\n\n\nI discovered that between \ngem install bundler\n and\n\n\nbundle install --deployment --without development test\n,\nyou have to update your environment, with \n\neval \"$(rbenv init -)\"\n, i.e.\n\n\necho 'eval \"$(rbenv init -)\"' >> .bashrc\n# and then\n. ~/.bashrc\n\n\n\n\nYou have to update your environment more than once, during the\ninstallation.\n\n\nPresumably you don't ever want to delete the \n~/live/Public/\n directory\nif that is where assets are being stored, but it seems ok to delete \n\n~/live/node_modules\n and then rerun the \nyarn install\n command.\n\n\nIn \n~/live/.env.production\n, \nSINGLE_USER_MODE=false\n has to be set\nto \nfalse\n until at least one user is created, or the web service won't \neven start. (Also \nchmod 755 ~/\n)",
"text": "Some Observations About Installing Mastodon on Arch.\n\n\nNginx\n\n\nFrom the \nProduction Guide\n\nyou can copy the example nginx.conf file to \n/etc/nginx/sites-enabled/some_arbitrary.conf\n,\nand then add the following to \n/etc/nginx/nginx.conf\n in the http section,\nthis with a fresh install of nginx with the default configuration file.\n\n\n# /etc/nginx/nginx.conf \nhttp {\n include sites-enabled/*;\n}\n\n\n\n\nInstalling the Dependancies\n\n\npacman -S certbot nginx libxml2 imagemagick ffmpeg git yarn npm python2 oidentd\n\n\n\n\n# I'm guessing here\npacman -S libpqxx libxslt protobuf protobuf-c\n\n\n\n\n\n\nI'm assuming base-devel is installed\n\n\npython2 seems to be required to run \nyarn install\n command later on\n\n\noidentd seems to be a usable replacement for pident\n\n\nlibpqxx pulls in postgresql-libs\n\n\nfile is already installed\n\n\ncurl is already installed\n\n\nruby-build and rbenv are installable from aur\n\n\nalso postgresql and redis unless, those are in another container or whatever.\n\n\n\n\nOther Observations\n\n\nI discovered that between \ngem install bundler\n and\n\n\nbundle install --deployment --without development test\n,\nyou have to update your environment, with \n\neval \"$(rbenv init -)\"\n, i.e.\n\n\necho 'eval \"$(rbenv init -)\"' >> .bashrc\n# and then\n. ~/.bashrc\n\n\n\n\nYou have to update your environment more than once, during the\ninstallation.\n\n\nPresumably you don't ever want to delete the \n~/live/Public/\n directory\nif that is where assets are being stored, but it seems ok to delete \n\n~/live/node_modules\n and then rerun the \nyarn install\n command.\n\n\nIn \n~/live/.env.production\n, \nSINGLE_USER_MODE=false\n has to be set\nto \nfalse\n until at least one user is created, or the web service won't \neven start. (Also \nchmod 755 ~/\n)\n\n\nThe Different Documentation for Updating\n\n\nUpdating Guide\n\nI really think that when you update, you're going to want to read through the installation guide,\nthen compare it to the older version, then read through the upgrade guide. And finally, I think\nyou want to really comb through the \nUpgrade notes\n in the\n\nRelease Notes\n\n\nInstallation Guide\n\n(bare metal)\n\nYou may also find this\n\nOlder Installation Guide\n\nuseful for reference.",
"title": "Mastodon on Arch"
},
{
@ -325,6 +325,11 @@
"text": "I discovered that between gem install bundler and bundle install --deployment --without development test ,\nyou have to update your environment, with eval \"$(rbenv init -)\" , i.e. echo 'eval \"$(rbenv init -)\"' >> .bashrc\n# and then\n. ~/.bashrc You have to update your environment more than once, during the\ninstallation. Presumably you don't ever want to delete the ~/live/Public/ directory\nif that is where assets are being stored, but it seems ok to delete ~/live/node_modules and then rerun the yarn install command. In ~/live/.env.production , SINGLE_USER_MODE=false has to be set\nto false until at least one user is created, or the web service won't \neven start. (Also chmod 755 ~/ )",
"title": "Other Observations"
},
{
"location": "/mastodon_on_arch/#the-different-documentation-for-updating",
"text": "Updating Guide \nI really think that when you update, you're going to want to read through the installation guide,\nthen compare it to the older version, then read through the upgrade guide. And finally, I think\nyou want to really comb through the Upgrade notes in the Release Notes Installation Guide \n(bare metal) \nYou may also find this Older Installation Guide \nuseful for reference.",
"title": "The Different Documentation for Updating"
},
{
"location": "/debian_nspawn_container_on_arch_for_testing_apache_configurations/",
"text": "Debian Nspawn Container On Arch For Testing Apache Configurations\n\n\nBegin by exporting the environmental variable for your squid cacheing \nproxy. If you're deboostrapping Debian file systems, the best way to\nspeed this up is with squid.\n\n\nThe ArchWiki page for nspawn containers has a\n\nDebian/Ubuntu subsection\n\nObviously you're going to want to install debootstrap and debian-archive-keyring.\n\n\n# to create a Stretch Container\ncd /var/lib/machines \nmkdir <container name> \ndeboostrap stretch <container name>\n\n\n\n\nAfter some experimentation, perhaps this is the best time to write\nthe intended hostname into the container, and write any\napt-cacher or apt-cacher-ng proxies into /etc/apt/apt.conf \non the container.\n\n\ncp apt.conf /etc/apt/apt.conf \necho \"<hostname>\" > /var/lib/machines/<container name>/etc/hostname\n\n\n\n\nAnd then start the container, and set the root password.\n\n\n# boot in interactive mode\nsystemd-nspawn -D <container name>\n# set the passwd and logout\npassword \nlogout \n\n\n\n\nNow we can boot the container in non-interactive mode, either\nfrom the command line or using nspawn files. In either case \ndouble check that the your bind mounts have the correct permissions \nfrom inside the container.\n\n\n# for instance attached to a bridge interface br0 \nsystemd-nspawn -b -D <container name> --network-bridge=br0\n# or if you've set up a package cache \nsystemd-nspawn -b -D <container name> --network-bridge=br0 --bind=/var/cache/apt/archives\n\n\n\n\nAlternately, if you use an nspawn file, then you can use a command \nsimilar to the following to start it, you'll first need to \nboot the container from the command line and install dbus,\nbecause \nmachinectl shell\n and \nmachinectl login\n won't work \nwithout dbus. In this case use the following sequence of commands.\n\n\n# start the container and login as root\nsystemd-nspawn -b -D <container name> --network-bridge=br0 \n# bring up networking so you can install dbus\nsystemctl enable/start systemd-networkd\n# this is also a good time to install and configure locale\napt install dbus locales \n# to configure locale \ndpkg-reconfigure locales \npoweroff\n\n\n\n\nAfter this you can start the container with systemd, when \nusing an nspawn file.\n\n\nsystemctl start systemd-nspawn@<container name>\n\n\n\n\n# /etc/systemd/nspawn/<container name>.spawn \n[Files] \n# Bind=/var/cache/apt/archives \n\n[Network] \nbridge=br0 \n\n\n\n\nYou can use tasksel to install a web-server.\n\n\n# apache2 will immediately be listening on port 80\ntasksel install web-server\n# enable mod ssl\na2enmod ssl ; systemctl restart apache2\n# enable the default ssl test page \na2ensite default-ssl.conf ; systemctl reload apache2\n\n\n\n\nYou'll be up and running with the default self-signed certs.",

View File

@ -4,7 +4,7 @@
<url>
<loc>/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -12,7 +12,7 @@
<url>
<loc>/apt_pinning_artful_aardvark_packages_in_xenial_xerus/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -20,7 +20,7 @@
<url>
<loc>/lxd_container_home_server_networking_for_dummies/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -28,7 +28,7 @@
<url>
<loc>/how_to_reassign_a_static_ip_address_with_dnsmasq/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -36,7 +36,7 @@
<url>
<loc>/serve_and_share_apps_from_your_phone_with_fdroid/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -44,7 +44,7 @@
<url>
<loc>/nspawn/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -52,7 +52,7 @@
<url>
<loc>/gentoo_lxd_container/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -60,7 +60,7 @@
<url>
<loc>/mastodon_on_arch/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -68,7 +68,7 @@
<url>
<loc>/debian_nspawn_container_on_arch_for_testing_apache_configurations/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -76,7 +76,7 @@
<url>
<loc>/dynamic_cacheing_nginx_reverse_proxy_for_pacman/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -84,7 +84,7 @@
<url>
<loc>/freebsd_jails_on_freenas/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -92,7 +92,7 @@
<url>
<loc>/arch_redis_nspawn/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -100,7 +100,7 @@
<url>
<loc>/arch_postgresql_nspawn/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -108,7 +108,7 @@
<url>
<loc>/misc_tips_troubleshooting/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>
@ -116,7 +116,7 @@
<url>
<loc>/self_signed_certs/</loc>
<lastmod>2017-08-21</lastmod>
<lastmod>2017-08-22</lastmod>
<changefreq>daily</changefreq>
</url>