1.8 KiB
1.8 KiB
I can never seem to remember how to update each time, so I'm taking notes.
This is just a copy of how I did it last time, which probably isn't best but complex git stuff is above my pay grade
First, check any changes on the live environment.
- git status
- git commit -v -a && git push (if needed)
Now update the upstream dir and make a branch, because git won't merge from a tag
-
cd ~/projects/mastodon/mastodon-upstream
-
git pull
-
git tag | tail ## look for the latest release tag
-
git checkout v4.XX ## use that tag
-
git branch 4XX
-
git checkout 4XX ## from here you can check the log to be sure
-
git checkout main ## gets us out of the detached head state
Merge from the server into deploy
- cd ../mastodon-deploy
- git pull # grab any updates from the first step
- git remote add localupstream ../mastodon-deploy ## only if we started fresh otherwise it's still here
- git fetch localupstream
- git merge localupstream/4XX ## branch name from previous step
- git push
Now it's time to update the live server
- (be root)
- cd /srv/mastodon
- DOUBLE CHECK THE DOCKER COMPOSE FILE! Upstream might have given a public image name and we don't want that
- git pull
- resolve the merge conflicts: don't let upstream change docker-compose.yml to use official images!
-
CHECK THE DISK SPACE!!! need plenty of disk free (20%?) on
/
otherwise it will fall on its face- low hanging disk fruit: go around doing
docker compose up -d --force-recreate
in various non-mastodon places to purge some logs and other shit- /srv/nginx
- /srv/synapse
- low hanging disk fruit: go around doing
-
DOUBLE CHECK THE RELEASE INSTRUCTIONS FOR SPECIAL STEPS
- docker compose build
- docker compose up -d
Once satisfied, do some cleanup
- docker system prune