Auparavant, j'avais écrit la version jusqu'à Misskey v10, mais la procédure d'installation a changé en raison de l'utilisation de Postgresql à partir de la v11 ou d'une version ultérieure. Cette section décrit comment installer la version 11 ou ultérieure.
Cliquez ici pour la version 10 et antérieure: https://qiita.com/YuzuRyo61/items/7105d16ac75c78899f1c
Cet article est basé sur les séries Ubuntu et Debian.
Ceci est une procédure de routine.
sudo apt update
sudo apt upgrade -y
Il est recommandé de redémarrer après la mise à niveau.
Misskey nécessite Node.js (v11.10.1 ou version ultérieure), PostgreSQL (v10 ou version ultérieure) et Redis. La recherche élastique est également disponible en option, mais cette fois elle est omise. Puisque le fil est recommandé, nous allons également introduire du fil.
Ensuite, utilisez nginx comme proxy inverse.
Node.js
Installez Node.js via Nodesource. Pour Linux sur un autre système de gestion de paquets, tel que CentOS, cliquez sur Voir le README dans ce référentiel.
# Using Ubuntu curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - sudo apt-get install -y nodejs
https://github.com/nodesource/distributions#installation-instructions
yarn
Introduit à partir du référentiel de fils officiel.
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt-get update && sudo apt-get install yarn
https://classic.yarnpkg.com/ja/docs/install#debian-stable
PostgreSQL
Depuis le référentiel par défaut.
sudo apt install postgresql-10 postgresql-server-dev-10
Redis
Ceci est également extrait du référentiel par défaut tel quel.
sudo apt install redis-server
nginx
Depuis le référentiel officiel nginx. Je ne suis pas particulier à ce sujet, je vais donc mettre une version stable.
sudo apt install curl gnupg2 ca-certificates lsb-release echo "deb http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add - sudo apt-key fingerprint ABF5BD827BD9BF62 #Ceci est pour confirmation. sudo apt update sudo apt install nginx
http://nginx.org/en/linux_packages.html#Ubuntu
Présentez build-essential.
sudo apt install build-essential
Démarrez le service.
sudo systemctl start nginx postgresql redis-server
sudo systemctl enable nginx postgresql redis-server
Spécifiez l'utilisateur à démarrer. Le nom d'utilisateur est arbitraire.
sudo adduser --disabled-password --disabled-login misskey
sudo su - misskey
Clonez le référentiel et recherchez la dernière version.
git clone -b master https://github.com/syuilo/misskey.git
cd misskey
#La version est https://github.com/syuilo/misskey/releases/Voir les dernières
git checkout <12.x.x>
Installez le paquet avec du fil. Assurez-vous que yarn.lock n'est pas remplacé.
yarn install --pure-lockfile
Créez default.yml en copiant example.yml.
cp .config/example.yml .config/default.yml
Définissez default.yml en fonction des commentaires à l'intérieur.
Construisez Misskey. Cela peut prendre un certain temps.
NODE_ENV=production yarn build
Initialisez la base de données pour qu'elle puisse être utilisée.
yarn run init
Vous pouvez vérifier le démarrage avec la commande suivante. Si vous pouvez le confirmer, appuyez sur Ctrl-C pour arrêter le serveur.
NODE_ENV=production yarn start
/etc/systemd/system/misskey.service
[Unit]
Description=Misskey daemon
[Service]
Type=simple
User=misskey #Si le nom d'utilisateur est différent, veuillez le changer
ExecStart=/usr/bin/npm start
WorkingDirectory=/home/misskey/misskey #Veuillez changer en fonction de l'environnement
Environment="NODE_ENV=production"
TimeoutSec=60
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=misskey
Restart=always
[Install]
WantedBy=multi-user.target
Après le paramétrage, exécutez systemctl daemon -reload
pour mettre à jour la liste des services.
Avec systemctl enable misskey
, misskey s'exécute au démarrage.
Démarrez-le avec systemctl start miss key
.
Enfin, configurez le proxy inverse pour nginx.
Le nom du fichier est arbitraire. S'il y a des changements, veuillez changer en conséquence.
nginx:/etc/nginx/conf.d/misskey.conf
# Sample nginx configuration for Misskey
#
# 1. Replace example.tld to your domain
# 2. Copy to /etc/nginx/sites-available/ and then symlink from /etc/nginx/sites-enabled/
# or copy to /etc/nginx/conf.d/
# For WebSocket
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
proxy_cache_path /tmp/nginx_cache levels=1:2 keys_zone=cache1:16m max_size=1g inactive=720m use_temp_path=off;
server {
listen 80;
listen [::]:80;
server_name example.tld;
# For SSL domain validation
root /var/www/html;
location /.well-known/acme-challenge/ { allow all; }
location /.well-known/pki-validation/ { allow all; }
location / { return 301 https://$server_name$request_uri; }
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.tld;
ssl_session_cache shared:ssl_session_cache:10m;
# To use Let's Encrypt certificate
ssl_certificate /etc/letsencrypt/live/example.tld/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.tld/privkey.pem;
# To use Debian/Ubuntu's self-signed certificate (For testing or before issuing a certificate)
#ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
#ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
# SSL protocol settings
ssl_protocols TLSv1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES128-SHA;
ssl_prefer_server_ciphers on;
# Change to your upload limit
client_max_body_size 80m;
# Proxy to Node
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_http_version 1.1;
proxy_redirect off;
# For WebSocket
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
# Cache settings
proxy_cache cache1;
proxy_cache_lock on;
proxy_cache_use_stale updating;
add_header X-Cache $upstream_cache_status;
}
}
https://github.com/syuilo/misskey/blob/develop/docs/examples/misskey.nginx
Une fois définis, appliquez les modifications avec systemctl restart nginx
.
Ceci termine les réglages: tada:
S'il y a une mise à jour, accédez d'abord au répertoire où Misskey est installé. Entrez ensuite les commandes suivantes dans l'ordre du haut.
git fetch
git checkout <12.x.x> #Saisissez la dernière version du tag
yarn install --pure-lockfile
NODE_ENV=production yarn build
yarn migrate
Entrez la commande ci-dessus, et s'il n'y a aucune erreur, redémarrez le service misskey. Ceci termine la mise à jour.
Recommended Posts