Docker for Windows で象を暴れさせてみた

前回までで、とりあえず Mastodon のセットアップは出来た。次は、その Mastodon のトップページを表示する方法である。

試行錯誤してたら何となく出来たので、簡単に記載しておく。クリーンな環境からの再構築テストはしていないので、抜け洩れや不要な作業があるかもしれない。

オレオレ証明書をつくる

オレオレ Mastodon の証明書にはオレオレが相応しかろう。nginxに自己証明書(オレオレ証明書)を設定を参考に、証明書を作成する。

Nginx コンテナをつくる

Mastodon の docker-compose.yml に追記を行う。

まずは service にこちら。

  nginx:
    image: nginx
    container_name: nginx-sandbox
    ports:
      - 8180:80
      - 443:443
    restart: always
    volumes:
      - ./conf:/etc/nginx/conf.d/
      - ./certs:/etc/nginx/certs/
    networks:
      - front
      - internal_network

networks にこちら。

  front:
    external: true

Nginx に必要なファイルを配置する

docker-compose.yml で設定した通り、 conf ディレクトリを作ってそこに default.conf を、 certs ディレクトリを作ってそこにオレオレ証明書を、それぞれ配置する。

default.conf の内容は、ほぼ公式に記載されているサンプルの通りにした。

ただし 127.0.0.1 部分は、 docker の内部ネットワークを介するのでコンテナ名にしよう。あと ssl_certificatessl_certificate_key も、作成したオレオレ証明書を示すよう書き換えよう。

コンテナを起動しよう

docker-compose up -d する。

トップページにアクセスしてみよう

http://localhost:8180 へアクセスする。きっと about ページが君を迎えてくれるだろう。

ユーザを登録してみよう

……わたしの環境では、象が「もうしわけありませんが、なにかが間違っています。」と暴れ始めた。ログを見ると、リレーションが見つからないだのメソッドが定義されてないだのと書かれている。

最後に

どうせメールサーバの設定を行っていないので、リレーションが正しかろうとメソッドが定義されていようと、ユーザの登録はできない。

しかし、こんな行き当たりばったりで手あたり次第なわたしの作業ででも象は現れてくれた。今はそれだけでいい。

Docker 、ちょっと面白いかも。