Discourseは、チームのコミュニティディスカッションフォーラムやメーリングリストを作成するために設計された、無料のオープンソースディスカッションプラットフォームです。 Ember.jsとRubyonRailsで記述されており、データベースのバックエンドにPostgreSQLを使用しています。これは、ユーザーエンゲージメントを促進するために、何千ものサイトでのディスカッションを促進する最新のフォーラムソリューションです。カスタマイズ可能な質問やアイデアを作成し、それを人気のあるサービスと統合することができます。
Discourseは、スパムブロッキング、動的通知、ソーシャルログイン、2要素認証、包括的なAPI、強力なモデレーション、組み込みのモバイルレイアウトなど、豊富な機能セットを提供します。 。
このチュートリアルでは、Ubuntu20.04にDockerを使用してDiscourseフォーラムをインストールする方法を学習します。
- Ubuntu20.04を実行しているサーバー。
- サーバーで有効なドメイン名が指定されています。
- SMTPメールサーバー。メールサーバーがない場合は、GmailSMTPサーバーを使用できます。
- ルートパスワードはサーバーで構成されています。
Dockerをインストールする
まず、システムにDockerをインストールする必要があります。デフォルトでは、Dockerの最新バージョンはUbuntu20.04デフォルトリポジトリで利用できます。次のコマンドを実行してインストールできます:
apt-get install docker.io -y
Dockerがインストールされたら、Dockerサービスを開始し、次のコマンドを使用して再起動時に開始できるようにします。
systemctl start docker
systemctl enable docker
終了したら、次のステップに進むことができます。
開始する前に、Discourse用のディレクトリを作成します。次のコマンドで作成できます:
mkdir /opt/discourse
次に、次のコマンドを使用して、GitHubリポジトリから最新バージョンのDiscourseをダウンロードします。
git clone https://github.com/discourse/discourse_docker.git /opt/discourse
次に、システムにnet-toolsパッケージもインストールします。次のコマンドでインストールできます:
apt-get install net-tools -y
インストールが完了したら、次の手順に進むことができます。
次に、ディレクトリを/ opt / discourseに変更し、次のコマンドを使用してDiscourseセットアップスクリプトを実行します。
cd /opt/discourse
./discourse-setup
以下に示すように、システムのホスト名を入力するように求められます。
Ports 80 and 443 are free for use 'samples/standalone.yml' -> 'containers/app.yml' Found 4GB of memory and 2 physical CPU cores setting db_shared_buffers = 1024MB setting UNICORN_WORKERS = 4 containers/app.yml memory parameters updated. Hostname for your Discourse? [discourse.linuxbuz.com]: discourse.linuxbuz.com
有効な完全修飾ドメイン名を入力して、 Enterを押してください 。以下に示すように、管理者アカウントの電子メールアドレス、SMTPサーバー、SMTPユーザー名、SMTPパスワード、およびLet'sEncryptの電子メールアドレスを入力するように求められます。
Checking your domain name . . . Connection to discourse.linuxbuz.com succeeded. Email address for admin account(s)? [[email protected],[email protected]]: [email protected] SMTP server address? [smtp.example.com]: smtp.gmail.com SMTP port? [587]: SMTP user name? [[email protected]]: [email protected] SMTP password? [pa$$word]: [email protected] Optional email address for Let's Encrypt warnings? (ENTER to skip) [[email protected]]: [email protected]
すべての詳細を入力し、入力をクリックします 。次の出力が表示されます。
Does this look right? Hostname : discourse.linuxbuz.com Email : [email protected] SMTP address : smtp.gmail.com SMTP port : 587 SMTP username : [email protected] SMTP password : asdfgsd Let's Encrypt : [email protected] ENTER to continue, 'n' to try again, Ctrl+C to exit:
Enterキーを押して、インストールを開始します。インストールが完了すると、次の出力が表示されます。
Enabling Let's Encrypt web.ssl.template.yml enabled letsencrypt.ssl.template.yml enabled Configuration file at updated successfully! Updates successful. Rebuilding in 5 seconds. Building app Ensuring launcher is up to date Fetching origin Launcher is up-to-date + /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=4 -e UNICORN_SIDEKIQS=1 -e RUBY_GLOBAL_METHOD_CACHE_SIZE=131072 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_HOSTNAME=discourse.linuxbuz.com -e [email protected] -e DISCOURSE_SMTP_ADDRESS=smtp.gmail.com -e DISCOURSE_SMTP_PORT=587 -e [email protected] -e DISCOURSE_SMTP_PASSWORD=asdfgsd -e [email protected] -h ubuntu2004-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:43:15:82:15:a7 local_discourse/app /sbin/boot 7e303b07344c3643846a03d5c2f758ec67a6aa94b2a6a399bcb2766ccd02b3c2
上記のセットアップスクリプトは、 discourse / container内にapp.ymlという構成ファイルを生成します ディレクトリ。構成を変更する場合は、 /opt/discouse/containers/app.ymlを編集するだけです。 ファイルを作成して./launcherrebuildappを実行し、変更を適用します。
次に、Webブラウザーを開き、URLhttps://discourse.linuxbuz.comを入力します。談話登録ページにリダイレクトされます:
登録をクリックします ボタン。次のページが表示されます:
管理者アカウントのユーザー名とパスワードを入力し、登録をクリックします ボタン。次のページが表示されます:
アカウントを有効化するためのメールが届きます。
おめでとう!これで、Ubuntu20.04サーバーにDockerを使用してDiscourseフォーラムが正常にインストールされました。 Discourseを使用して独自のオンラインディスカッションフォーラムを簡単に展開できるようになったことを願っています。ご不明な点がございましたら、お気軽にお問い合わせください。