# discourse/docker ..? で nginx の設定を直接更新するにはどうすればよいですか

**URL:** https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011
**Category:** Self-hosting
**Tags:** docker, nginx
**Created:** [2023 年 5 月 5 日午後 8:11 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011 "2023-05-05T20:11:50Z")
**Posts on this page:** 11
**Page:** 1

<div class="post-metadata">

### Author: ![Ibrahim\_salem](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ibrahim_salem/32/217422_2.png) [@Ibrahim\_salem](https://meta.discourse.org/u/Ibrahim_salem)
#### Post date: [2023 年 5 月 5 日午後 8:11 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/1 "2023-05-05T20:11:50Z")

</div>

ウェブテンプレートファイル内で、nginx設定ファイルテンプレートを更新する（置換ステートメント）手順を見つけました。  
nginx設定にセクション全体を追加する方法はありませんか？

discourse/shared内の/uploadsフォルダはnginxからアクセス可能です。新しいフォルダ/photosを追加したいです。  
直接的な方法（discourse推奨の方法）はありますか？

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2023 年 5 月 6 日午前 7:33 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/2 "2023-05-06T07:33:50Z")

</div>

> [@Ibrahim\_salem](#):
>
> 新しいフォルダ/photosを追加したいのですが

なぜそうしたいのか説明していただけますか？

いずれにしても、「Photos」はDiscourseにアップロードできます。画像のアップロードと最適化はすでにDiscourseに組み込まれています。

---

<div class="post-metadata">

### Author: ![Ibrahim\_salem](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ibrahim_salem/32/217422_2.png) [@Ibrahim\_salem](https://meta.discourse.org/u/Ibrahim_salem)
#### Post date: [2023 年 5 月 6 日午後 4:14 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/3 "2023-05-06T16:14:58Z")

</div>

おそらく間違った例を挙げたのかもしれません。私が知りたいのは、元のnginx設定にどのようにアクセスし、新しいマッピングをフォルダに追加したり、その他のことをしたりするために、セクション全体を追加できるかということです。それは可能ですか？それとも推奨されませんか？

外部のnginxサーバーをインストールして、すべてのリンクをdocker nginxにリダイレクトさせて、自分のことをすることができます。

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2023 年 5 月 6 日午後 4:35 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/4 "2023-05-06T16:35:53Z")

</div>

この設定を編集する同様の手法が、以前のこのウィキ投稿からのアドバイスで役立つかもしれません。

（以前のこのウィキ投稿から抜粋：[Set up Let’s Encrypt with multiple domains / redirects](https://meta.discourse.org/t/set-up-let-s-encrypt-with-multiple-domains/56685?u=merefield%EF%BC%89)

「非常にシンプルです。`app.yml` のフックセクションに以下のようなものを追加してください。

## ステップ 2 - discourse.conf

ステップ 1 に加えて、`DISCOURSE_HOSTNAME` 以外のものに対して http から https へのリダイレクトを正しく行うために nginx に変更が必要です。

```plaintext
    - replace:
        filename: "/etc/nginx/conf.d/discourse.conf"
        from: /return 301 https.+/
        to: |
          return 301 https://$host$request_uri;

```

また、[`web.ssl.template.yml`](https://github.com/discourse/discourse_docker/blob/master/templates/web.ssl.template.yml#L39) が追加するリライトを削除する必要があります。これは `DISCOURSE_HOSTNAME` のみを強制し、現在は他にもドメインがあるためです！

```plaintext
    - replace:
        filename: "/etc/nginx/conf.d/discourse.conf"
        from: /gzip on;[^\\}]+\\}/m
        to: |
          gzip on;
          add_header Strict-Transport-Security 'max-age=31536000'; # 証明書を1年間記憶し、このドメインのHTTPSに自動的に接続します

```

---

<div class="post-metadata">

### Author: ![Ibrahim\_salem](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ibrahim_salem/32/217422_2.png) [@Ibrahim\_salem](https://meta.discourse.org/u/Ibrahim_salem)
#### Post date: [2023 年 5 月 6 日午後 5:16 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/5 "2023-05-06T17:16:22Z")

</div>

はい、テンプレートファイル内にこれらの指示が見つかりました。  
検索と置換ではなく、新しいセクションを追加する指示はありませんか？

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2023 年 5 月 6 日午後 5:27 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/6 "2023-05-06T17:27:10Z")

</div>

工夫が必要になると思います。

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [2023 年 5 月 6 日午後 5:27 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/7 "2023-05-06T17:27:57Z")

</div>

なぜこの追加フォルダが必要なのか教えていただけませんか？同様のニーズを持っていた人がいるかもしれませんが、想定されている解決策が唯一の方法ではない可能性があります。

---

<div class="post-metadata">

### Author: ![Ibrahim\_salem](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ibrahim_salem/32/217422_2.png) [@Ibrahim\_salem](https://meta.discourse.org/u/Ibrahim_salem)
#### Post date: [2023 年 5 月 6 日午後 5:38 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/8 "2023-05-06T17:38:54Z")

</div>

それは悪い例だと言ったんです。さまざまなソリューションで追加のフォルダを管理できます。これまでのところ問題はありません。  
それでも、nginx構成にまったく新しいセクションを追加できるようにしたいのです。もしそうする必要があるなら、どうすればよいのか知りたいだけです。

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2023 年 5 月 6 日午後 5:40 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/9 "2023-05-06T17:40:42Z")

</div>

提案したようなパターンマッチングは可能でしょうか。ファイル末尾のパターンを、変更を末尾に追加したものと同じものに置き換えます。

---

<div class="post-metadata">

### Author: ![Ibrahim\_salem](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ibrahim_salem/32/217422_2.png) [@Ibrahim\_salem](https://meta.discourse.org/u/Ibrahim_salem)
#### Post date: [2023 年 5 月 6 日午後 5:42 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/10 "2023-05-06T17:42:22Z")

</div>

そう思いました。  
もしかしたら、新しく追加されたセクションのために、この目的で定義された魔法のフィールドがあるのではないかと思っていました。  
気にしないでください。あなたの提案に基づいて対応できると思います。

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [2023 年 6 月 5 日午後 5:43 UTC](https://meta.discourse.org/t/how-can-i-update-the-nginx-config-directly-in-discourse-docker/264011/11 "2023-06-05T17:43:03Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
