安装 Misskey v13
随着老机器空间不足,去年就买了新服务器准备迁移,加上后来 Misskey 大版本更新,想着一起升级就好了。最后一拖就是一年的时间,今天因为工作不顺心,就自暴自弃再来装一次,反正失败也不会更加不爽了。
环境配置
我选择的安装方式还是老样子——Docker 安装。首先需要安装docker
和docker compose
。
说起安装 docker,那就不得不说说为什么我拖了一年没有更新的事,那就是因为我装不上 docker 啊!但是因为什么原因装不上,我实在想不起来了,反正我为了这事,耗了两天也没解决。
这次老老实实按照官方的流程走,一步也不要乱走。
安装基本依赖
先来安装一些必要的依赖,curl
git
nginx
,这些即使不装 Misskey,也会需要用到。直接安装包糊弄一下就好了。
1apt-get update
2apt-get install curl git nginx -y
安装 Docker
谨慎起见,按照官方安装方法一步步走。Install Docker Engine on Debian
首先,删除老版本的 docker
1for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
同时移除文件夹/var/lib/docker/
和/var/lib/containerd/
为了清理我之前可能装过的程序,我又执行了卸载 docker 的命令
1sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
接下来懒人用安装包安装,不要有自己的想法,文档说什么就做什么。
-
安装需要的依赖
1apt-get ca-certificates gnupg -y
-
添加 docker 官方 GPG key
1sudo install -m 0755 -d /etc/apt/keyrings 2curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg 3sudo chmod a+r /etc/apt/keyrings/docker.gpg
-
设置仓库
1echo \ 2 "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ 3 "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ 4 sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
-
再更新一下
apt
安装包索引1apt-get update
-
安装 Docker Engine, containerd, Docker Compose
1sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
-
启动 Docker
1systemctl start docker
最后测试一下是否安装成功,如果安装成功,下面这条命令会下载并运行一个测试镜像
1sudo docker run hello-world
之前因为我没有启动 docker,所以测试镜像一直不能运行,导致我以为没安装好,简直太蠢了。
安装 Misskey
-
拷贝 Misskey 仓库到本地
1git clone -b master https://github.com/misskey-dev/misskey.git 2cd misskey 3git checkout master
-
编辑配置文件
先从模板拷贝一份
1cp .config/docker_example.yml .config/default.yml 2cp .config/docker_example.env .config/docker.env 3cp ./docker-compose.yml.example ./docker-compose.yml
编辑
default.yml
和docker.env
,docker-compose.yml
基本没什么要改动的。default.yml
是关于 Misskey 的配置文件,docker.env
是 docker 内部的环境配置,设置了数据库的名称、用户和密码。只要数据库的这些信息正确填写到 Misskey 配置文件中就好。 -
构建和初始化
1docker compose buile 2docker compose run --rm web pnpm run init
-
启动
1docker compose up -d
当当当!完成!开启端口本地预览一下,成功!