5
7

More than 1 year has passed since last update.

Misskeyをポート開放できない自宅から公開した話

Posted at

はじめに

こちらの記事はFediverse Advent Calendar 2022の12月18日目の記事になります。

対象者

ポート開放ができないけど、自分でサーバーを公開したい人向け(ゲームのサーバーは一部対象外)
自分はWindowsの為、他OSはわかりません!

構築順

  1. ドメインを購入する(すでに購入済みの方はSKIP)
  2. CloudFlareの設定を行う
  3. Misskeyの構築
  4. 外部から接続を確認する

CloudFlareにてドメインを購入する

CloudFlareのDashboardからドメインの購入を行う
image.png
支払い方法はPaypalやクレカが使用できます。

CloudFlareの設定を行う

ドメインの購入を行ったらタブのZero Trustより設定を行います。

Tunnelsのタブより、Create a tunnelをします。
image.png

Name your tunnelは自分がわかりやすい名前を指定します
image.png

名前の設定を行ったあとは、CloudFlaredをInstall and run a connectorに従ってインストールします
image.png
(各OSを選択し、インストールします)

インストール後にTunnelsの設定を行います。
Public Hostnameから、Add a public hostnameから自分のPCと外部の接続を行います。
image.png

Subdomainは***.自分のドメインとなる部分になります。
TypeはHTTPとし、URLには自分のサーバーとなる値を入れておきます
(Misskeyの場合はlocalhost:3000)
image.png

以上でPCとCloudFlareの接続は終わりです。
(localhostでサーバーを公開したい人はこのままサーバーを起動すると設定したURLへ公開されます)

Misskeyの構築

自分はMisskeyHubより全部自力でインストールする方法を取りました。
PostgreSQLのみ、UserとPassを作成する必要があります。

psql.exeよりCreate userを行います
psql CREATE USER user WITH PASSWORD 'pass'
上記に使用したuser,passは後で使用するので覚えておきましょう。

Configで変更する部分は下記部分を設定した値に変更します。

下記はCloudFlareにて設定したURLを記載

url: https://example.tld/

下記は自力でインストールする際にpsqlから作成したユーザーを記載します

db:
  host: localhost
  port: 5432

  # Database name
  db: misskey

  # Auth
  user: example-misskey-user
  pass: example-misskey-pass

Proxyを使用する場合は下記も変更します。

# Proxy for HTTP/HTTPS
#proxy: http://127.0.0.1:3128

#proxyBypassHosts: [
#  'example.com',
#  '192.0.2.8'
#]

# Proxy for SMTP/SMTPS
#proxySmtp: http://127.0.0.1:3128   # use HTTP/1.1 CONNECT
#proxySmtp: socks4://127.0.0.1:1080 # use SOCKS4
#proxySmtp: socks5://127.0.0.1:1080 # use SOCKS5

# Media Proxy
#mediaProxy: https://example.com/proxy

# Proxy remote files (default: false)
#proxyRemoteFiles: true

以上でconfigの設定が終わりです。
正常に設定されていれば

git checkout master
git pull
git submodule update --init
yarn install
yarn build
yarn migrate

でMisskeyが起動します。

外部から接続を確認する

最初に指定したURLからMisskeyが表示されていれば問題ないです。
(CloudFlareDNSの浸透待ちもあるかと思います)

なにかあれば@nenohi@misskey.nenohi.net,@nenohi@misskey.ioまで

ローカルでサーバーを立ててよかったこと

  1. 自分でコードの変更ができる
  2. 別サーバーにて障害が起きても自鯖は無傷
  3. 絵文字のインポートやサーバーブロックを自由にできる

参考

CloudFlare Tunnelで自宅サーバーを公開する(FreeプランOK)

5
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
7