安装 Misskey v13

4 minute read

随着老机器空间不足,去年就买了新服务器准备迁移,加上后来 Misskey 大版本更新,想着一起升级就好了。最后一拖就是一年的时间,今天因为工作不顺心,就自暴自弃再来装一次,反正失败也不会更加不爽了。

环境配置

我选择的安装方式还是老样子——Docker 安装。首先需要安装dockerdocker 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

接下来懒人用安装包安装,不要有自己的想法,文档说什么就做什么。

  1. 安装需要的依赖

    1apt-get ca-certificates gnupg -y
    
  2. 添加 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
    
  3. 设置仓库

    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
    
  4. 再更新一下apt安装包索引

    1apt-get update
    
  5. 安装 Docker Engine, containerd, Docker Compose

    1sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    
  6. 启动 Docker

    1systemctl start docker
    

最后测试一下是否安装成功,如果安装成功,下面这条命令会下载并运行一个测试镜像

1sudo docker run hello-world

之前因为我没有启动 docker,所以测试镜像一直不能运行,导致我以为没安装好,简直太蠢了。

安装 Misskey

  1. 拷贝 Misskey 仓库到本地

    1git clone -b master https://github.com/misskey-dev/misskey.git
    2cd misskey
    3git checkout master
    
  2. 编辑配置文件

    先从模板拷贝一份

    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.ymldocker.envdocker-compose.yml基本没什么要改动的。default.yml是关于 Misskey 的配置文件,docker.env是 docker 内部的环境配置,设置了数据库的名称、用户和密码。只要数据库的这些信息正确填写到 Misskey 配置文件中就好。

  3. 构建和初始化

    1docker compose buile
    2docker compose run --rm web pnpm run init
    
  4. 启动

    1docker compose up -d
    

当当当!完成!开启端口本地预览一下,成功!