en:mastodon
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| en:mastodon [2024/02/10 11:05] – domele | en:mastodon [2024/02/10 16:26] (current) – domele | ||
|---|---|---|---|
| Line 15: | Line 15: | ||
| ===== Debian: ===== | ===== Debian: ===== | ||
| - | |||
| - | |||
| * This will be a rapid and dirty Tutorial to gain the maximum afford. | * This will be a rapid and dirty Tutorial to gain the maximum afford. | ||
| + | * Moreover i would suggest to install on the host apt-cacher-ng and add the the VM: | ||
| + | * < | ||
| * I assume you use a fresh, not used System. | * I assume you use a fresh, not used System. | ||
| * If we need to compile, we use ccache here to speed up due it might a 50/50 chance of a failure ;-) | * If we need to compile, we use ccache here to speed up due it might a 50/50 chance of a failure ;-) | ||
| + | * I also assume that this is a VM/ | ||
| + | * We Assume, you use Debian 12 - if you use i.e. debian 11 use this before: | ||
| + | * < | ||
| + | OLDDISTRI=bullseye | ||
| + | sed -i ' | ||
| + | sed -i ' | ||
| + | |||
| - | ====== Installing Pre-Requirements ====== | + | ===== Installing Pre-Requirements ====== |
| * < | * < | ||
| - | apt -qy update | + | INSTALLPATH=/ |
| - | apt install -qy curl gnupg2 ca-certificates lsb-release debian-archive-keyring sudo \ | + | apt install -qy curl gnupg2 ca-certificates lsb-release debian-archive-keyring sudo git build-essential etckeeper |
| - | git build-essential etckeeper | + | |
| - | file git-core g++ libprotobuf-dev protobuf-compiler pkg-config nodejs gcc autoconf | + | sudo curl https:// |
| - | bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev | + | sudo curl -fsSL https:// |
| - | libncurses5-dev libffi-dev libgdbm3 libgdbm-dev nginx libidn11-dev | + | echo "deb [signed-by=/ |
| - | libicu-dev ccache libgdm1 libgdm-dev patch rustc libgmp-dev | + | curl -fsSL https:// |
| - | libgdbm6 libdb-dev uuid-dev git nano | + | echo "deb http:// |
| + | echo " | ||
| + | sudo curl -fsSL https:// | ||
| + | sudo chmod a+r / | ||
| + | sudo sh -c 'echo "deb https:// | ||
| + | wget --quiet -O - https:// | ||
| + | sudo echo \ | ||
| + | "deb [arch=$(dpkg --print-architecture) signed-by=/ | ||
| + | $(. / | ||
| + | sudo tee / | ||
| + | for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done | ||
| + | sudo apt -qy update && sudo apt -qy dist-upgrade | ||
| + | sudo update-ccache-symlinks | ||
| + | echo PATH="/ | ||
| + | PATH="/ | ||
| + | sudo install -m 0755 -d / | ||
| </ | </ | ||
| - | ===== Setup Mastodon: User and Repository Cloning ===== | ||
| - | FIXME | ||
| - | * < | ||
| - | * < | ||
| - | * < | ||
| - | * < | ||
| - | * < | ||
| - | * < | ||
| - | * < | ||
| - | * < | ||
| - | * < | ||
| - | ===== Adding Sources ===== | ||
| - | + | ===== Downloading Sources ===== | |
| - | * < | + | INSTALLPATH=/opt/mastodon/mastodon |
| - | sudo update-ccache-symlinks | + | git clone https://github.com/tootsuite/mastodon.git $INSTALLPATH |
| - | cp /usr/bin/ccache / | + | |
| - | echo PATH="/usr/lib/ccache: | + | |
| git clone https:// | git clone https:// | ||
| cd ~/.rbenv && src/ | cd ~/.rbenv && src/ | ||
| Line 61: | Line 69: | ||
| echo 'eval " | echo 'eval " | ||
| source ~/.bashrc | source ~/.bashrc | ||
| - | cd ~/live | + | cd $INSTALLPATH |
| gem install bundler | gem install bundler | ||
| git clone https:// | git clone https:// | ||
| git clone https:// | git clone https:// | ||
| - | rbenv install 3.2.3 | + | cd $INSTALLPATH && |
| - | rbenv global 3.2.3 | + | cd $INSTALLPATH && |
| - | ln -s ccache / | + | |
| - | ln -s ccache / | + | |
| - | sudo curl https:// | + | |
| - | curl -fsSL https:// | + | |
| - | echo "deb [signed-by=/ | + | |
| - | sudo curl -fsSL https:// | + | |
| - | sudo install -m 0755 -d / | + | |
| - | sudo curl -fsSL https:// | + | |
| - | sudo chmod a+r / | + | |
| - | sudo sh -c 'echo "deb https:// | + | |
| - | wget --quiet -O - https:// | + | |
| - | sudo echo \ | + | |
| - | "deb [arch=$(dpkg --print-architecture) signed-by=/ | + | |
| - | $(. / | + | |
| - | sudo tee / | + | |
| - | * < | + | |
| - | for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done | + | |
| - | sudo apt -qy update && sudo apt -qy dist-upgrade | + | |
| - | </ | + | |
| - | ===== Adding Debian Backports (optional) ===== | ||
| - | * < | + | ===== Setup Mastodon: User and Repository Cloning ===== |
| - | * < | + | FIXME |
| - | deb http://deb.debian.org/ | + | * < |
| - | deb-src http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware | + | |
| - | </ | + | INSTALLUSER=mastodon |
| + | sudo adduser $INSTALLUSER | ||
| + | sudo adduser $INSTALLUSER docker | ||
| + | sudo usermod | ||
| + | sudo usermod | ||
| + | sudo usermod | ||
| + | sudo chown -R $INSTALLUSER:www-data $INSTALLPATH | ||
| + | sudo chmod 755 $INSTALLPATH | ||
| + | su - $INSTALLUSER -c "cp $INSTALLPATH/.env.production.sample $INSTALLPATH/.env.production" | ||
| + | su - $INSTALLUSER | ||
| + | </ | ||
| ===== Setup Mastodon: .env.production ===== | ===== Setup Mastodon: .env.production ===== | ||
| - | * Short Info: don't edit the file, it will be overwritten by the next command. | + | * Short Info: You don' |
| * Follow up the configuration Guide. You don't need to compile your own Stuff. REALLY NOT. Save the Time :-) | * Follow up the configuration Guide. You don't need to compile your own Stuff. REALLY NOT. Save the Time :-) | ||
| + | * Thats why we removed the build lines above. | ||
| * Trust me its a pain in the Backside and waste your time... ;-D | * Trust me its a pain in the Backside and waste your time... ;-D | ||
| * < | * < | ||
| Line 110: | Line 108: | ||
| ===== Setup Mastodon: NGINX ===== | ===== Setup Mastodon: NGINX ===== | ||
| - | * We need to create and add some informations | + | * We need to create and add some information |
| * Hint: If you need to use a other Reverse-Proxy in front of it, its untested and my not work | * Hint: If you need to use a other Reverse-Proxy in front of it, its untested and my not work | ||
| - | * < | + | * < |
| - | * < | + | INSTALLPATH=/ |
| - | * < | + | sudo mkdir / |
| + | sudo cp $INSTALLPATH/ | ||
| + | sudo ln -s / | ||
| + | </ | ||
| Line 120: | Line 121: | ||
| * We Link the service-files to auto-update them | * We Link the service-files to auto-update them | ||
| - | * < | + | * < |
| - | * < | + | INSTALLPATH=/ |
| - | * < | + | INSTALLUSER=mastodon |
| - | * We reload the systemd daemon | + | sudo ln -s $INSTALLPATH/ |
| - | * < | + | sudo ln -s $INSTALLPATH/ |
| - | * < | + | sudo ln -s $INSTALLPATH/ |
| + | sudo systemctl daemon-reload | ||
| * We Check if it was successfull: | * We Check if it was successfull: | ||
| - | * < | + | * < |
| + | INSTALLPATH=/ | ||
| + | watch docker compose -f $INSTALLPATH/ | ||
| + | </ | ||
en/mastodon.1707563148.txt.gz · Last modified: by domele
