著者はhttps://www.brightfunds.org/organizations/wikimedia-foundation-inc [ウィキメディア財団]を選択して、https://do.co/w4do-cta [寄付のために書く]プログラムの一環として寄付を受け取りました.

前書き

Cloudronは、https://cloudron.io/appstore.html [WordPress、Rocket.Chat、Nextcloud、 GitLab、OpenVPNなど]。 Cloudronを使用する主な利点は、アプリのエンドツーエンドの展開を実行できることです。 データベースのプロビジョニング、DNSセットアップ、証明書管理、集中ユーザー管理、自動バックアップなどのタスクを自動化します。

Cloudronのアプリも自動更新を受け取ります。 Cloudronチームは、アップストリームアプリのリリースを追跡し、アプリの更新プログラムを公開します。 サーバーでアプリをインストールおよび更新するユーザーエクスペリエンスは、スマートフォンでアプリをインストールおよび更新する方法と非常に似ています。クリックするだけで、システム管理なしでインストールして使用を開始できます。

このチュートリアルでは、Cloudronをサーバーにインストールし、例としてWordPressサイトを展開して、Cloudronが完全な展開自動化を実行する方法を体験します。 最後に、Cloudronインスタンスを実稼働で使用できるようにするには、CloudronをセットアップしてDigitalOcean Spacesにバックアップします。

前提条件

このチュートリアルに従うには、次のものが必要です。

  • ルートアクセスおよびsudo、非ルートアカウントでUbuntu 18.04を実行しているサーバーは、次のhttps://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-18に従って設定できます。 -04 [初期サーバーセットアップガイド]。

  • アプリのインストール用のドメイン名。 「」などのドメインを使用する場合、Cloudronはダッシュボードを「」にインストールし、アプリは「」、「」などの指定したサブドメインにインストールされます。 `+ my +`サブドメインが利用可能である限り、既に使用されているドメインを使用しても安全です。

  • CloudronがDNS自動化を実行するために使用するDNS APIキー。 Cloudronは多くのhttps://cloudron.io/documentation/domains/#dns-providers[DNSプロバイダー]をサポートしています。 DNSプロバイダーがサポートされていない場合は、https://cloudron.io/documentation/domains/#wildcard-dns [wildcard]またはhttps://cloudron.io/documentation/domains/#manual-dns[manual ]オプション。 このチュートリアルでは、https://www.digitalocean.com/community/tutorials/how-to-point-to-digitalocean-nameservers-from-common-domain-registrars [DigitalOcean DNS]を使用します。 https://www.digitalocean.com/docs/api/create-personal-access-token/ [パーソナルアクセストークンの作成方法]に従ってDigitalOcean DNS APIキーを生成できます。

  • APIキー(アクセスおよびシークレット)を持つDigitalOcean Space。 DigitalOceanスペースとAPIキーを作成するには、https://www.digitalocean.com/community/tutorials/how-to-create-a-digitalocean-space-and-api-key [DigitalOceanスペースとAPIを作成する方法]を参照してください。キー]。

ステップ1-Cloudronのインストール

まず、https://cloudron.io/get.html [公式インストールスクリプト]を使用してCloudronをサーバーにインストールします。 このセットアップ手順をスキップする場合は、https://marketplace.digitalocean.com/apps/cloudron [DigitalOcean Marketplace]でCloudron 1クリック画像を使用できます。 それ以外の場合、Cloudronを手動でインストールする場合は、この手順を続けます。

まず、非rootユーザーとして、次のコマンドを実行してセットアップスクリプトをダウンロードします。

wget https://cloudron.io/cloudron-setup

次に、セットアップスクリプトを実行可能にするには、次のコマンドを実行します。

chmod +x ./cloudron-setup

最後に、Cloudronをインストールするには、次のコマンドを実行します。

sudo ./cloudron-setup --provider digitalocean

セットアップには約10分かかります。 セットアップが完了すると、スクリプトはサーバーを再起動する許可を求めます。続行するには、「+ Y +」を選択します。

Output
##############################################
        Cloudron Setup (latest)
##############################################

Follow setup logs in a second terminal with:
$ tail -f /var/log/cloudron-setup.log

Join us at https://forum.cloudron.io for any questions.

=> Installing software-properties-common
=> Ensure required apt sources
=> Updating apt and installing script dependencies
=> Checking version
=> Downloading version  ...
=> Installing base dependencies and downloading docker images (this takes some time) ...
=> Installing version  (this takes some time) ...
=> Waiting for cloudron to be ready (this takes some time) ....

Visit https://<IP> and accept the self-signed certificate to finish setup.

The server has to be rebooted to apply all the settings. Reboot now ? [Y/n] Y

サーバーにCloudronをインストールしたので、ドメインと管理者アカウントをセットアップできるようになりました。

ステップ2-Cloudronのセットアップ

この手順では、セットアップウィザードを使用してCloudronのプライマリドメインを構成し、アクセス用にCloudronアカウントを設定します。 また、https://letsencrypt.org/ [Let’s Encrypt]でドメインを保護するために、CloudronにDigitalOcean APIキーを提供します。

サーバーが再起動したら、ブラウザーで「+ https:// +」に移動し、自己署名証明書を受け入れます。

Chromeでは、[詳細]をクリックしてから[安全に進む] *をクリックして、自己署名証明書を受け入れることができます。 Firefoxで、*詳細例外の追加、最後に*セキュリティ例外の確認*をクリックします。

image:https://assets.digitalocean.com/articles/cloudron1804/step2a.png [Chrome-自己署名証明書を受け入れる]

この時点で、Cloudronセットアップウィザードが表示されます。 ドメイン名を入力し、ドメインをホストする場所を選択します。 Cloudronは、Cloudflare、Gandi、GoDaddyなど、多くのhttps://cloudron.io/documentation/domains/#dns-setup[DNSプロバイダー]をサポートしていますが、このチュートリアルでは、https:// wwwを使用したドメインの例を示します。 .digitalocean.com / community / tutorials / how-to-point-to-digitalocean-nameservers-from-common-domain-registrars [DNSプロバイダーとしてのDigitalOcean]。

image:https://assets.digitalocean.com/articles/cloudron1804/step2b.png [DNSのセットアップ]

DigitalOcean APIトークンを指定して、[次へ]をクリックします。

Cloudronはこれらのキーを使用してDNSを構成し、ドメインのLet’s Encrypt証明書を取得します。 Cloudronは「++」にリダイレクトします。 ブラウザのアドレスバーに緑色のロックが表示され、Cloudronインストールへの接続が安全になったことを示します。 ユーザー名とパスワードを入力して、セットアップを完了します。

image:https://assets.digitalocean.com/articles/cloudron1804/step2c.png [セットアップ管理者]

管理者アカウントを設定すると、*アプリはまだインストールされていません!*画面が表示されます。 Cloudronアカウントの設定が完了しました。 次に、インストールするアプリを決定できます。

ステップ3-アプリのインストール

これで、アプリのインストールを開始する準備が整いました。

インターフェースの* App Store *をクリックすると、Cloudronは `+ cloudron.io +`アカウントを作成するように促します。 このアカウントを使用して、サブスクリプションと請求を管理します。 Cloudronは2つのアプリに無料で使用できます。

image:https://assets.digitalocean.com/articles/cloudron1804/step3a.png [cloudron.ioアカウントの作成]

サインアップすると、1回のクリックで50以上のアプリをインストールできます。 アプリをクリックすると、インストールダイアログが表示されます。 例として、WordPressアイコンをクリックして、「++」サブドメインを使用できます。 *インストール*をクリックすると、Cloudronは、DNS、データベース、証明書など、各アプリに必要なすべてを自動的に設定します。

image:https://assets.digitalocean.com/articles/cloudron1804/step3b.png [WordPressのインストール]

アプリをインストールするときに、アプリをCloudronの集中ユーザー管理と統合するかどうかを選択できます。 Cloudronユーザー管理を使用することを選択した場合、Cloudronユーザー名とパスワードを使用してアプリにログインできます。 その後、Cloudronにさらにユーザーとグループを追加し、それらがアプリにアクセスできるかどうかを制御できます。 ユーザー管理をアプリに任せることを選択した場合、アプリは管理者アカウントで事前セットアップされ、インストール後に資格情報が表示されます。 アプリ自体にさらにユーザーを追加できます。 Cloudron上のアプリには常に外部からアクセスできることに注意してください。アクセス制御設定は、ログイン認証の実行方法のみを決定します。

インストールしたら、 `++`でアプリにアクセスできます。

image:https://assets.digitalocean.com/articles/cloudron1804/step3c.png [WordPress]

Cloudronインスタンスにアプリをインストールしました。このプロセスを使用して、利用可能なアプリをインストールできます。 データを保護するには、次の手順でバックアップを構成します。

ステップ4-バックアップの構成

実稼働環境でCloudronを使用する前に、サーバーの外部の場所にバックアップを定期的に保存するようにCloudronを構成することが不可欠です。 サーバーのスナップショットとは異なり、Cloudronはアプリごとに個別にバックアップを作成します。 このアプローチの主な利点は、アプリを個別にロールバックしたり、クローンを作成したり、別の新しいCloudronインストールに移行したりできることです。

Cloudronは、S3 APIまたはhttps://www.digitalocean.com/docs/volumes/ [外部ボリューム]をサポートするプロバイダーにバックアップできます。 このチュートリアルでは、DigitalOcean Spacesをバックアップストレージとして使用します。

DigitalOcean Spaceをセットアップすると、https://www.digitalocean.com/community/tutorials/how-to-create-a-digitalocean-space-and-api-key [このガイド]に従って、関連するAPIキーを使用できます。 。 次に、*バックアップ*ビューに移動し、*構成*をクリックして、Cloudronバックアップを構成します。

image:https://assets.digitalocean.com/articles/cloudron1804/step4.png [DOスペースでのバックアップの構成]

Cloudronは定期的にバックアップを保存します。 サーバーがクラッシュした場合、またはサーバーを別のDigitalOceanリージョンに移動する場合は、新しいドロップレットを作成し、Cloudronをインストールし、https://cloudron.io/documentation/backups/#restoring-cloudron-from-a-backupを実行できますサーバーをバックアップから正確な状態に[復元]します。

CloudronインストールをDigitalOcean Spaceに接続し、バックアップを構成しました。 次の記事では、Cloudronで利用可能な他の機能のいくつかをレビューします。

ステップ5-その他の機能の調査(オプション)

Cloudronのユーザー管理は一元化されており、チームメンバーを招待して各ユーザーのアクセス制御を設定できます。

新しいメンバーを追加するには、* Users ビューに移動して、 New User *をクリックします。 Cloudronは、新規ユーザーにサインアップリンクを記載したメールを送信します。

image:https://assets.digitalocean.com/articles/cloudron1804/step5a.png [ユーザービュー]

新しいユーザーは、サインアップして、アクセス権を付与したアプリケーションを使用し始めることができます。 このチュートリアルのWordPressの例では、ユーザー管理オプションを*このCloudronのすべてのユーザーを許可*に設定してアプリケーションをインストールしたため、新しいユーザーがすぐにアクセスできます。

Cloudronインスタンスを管理する際のもう1つの一般的なタスクは、プライマリドメイン以外のドメインにアプリをインストールすることです。 ドメインを追加するには、*ドメイン*ビューに移動して、*ドメインの追加*をクリックします。 完了したら、この新しく追加したドメインにアプリをインストールできます。

image:https://assets.digitalocean.com/articles/cloudron1804/step5b.png [ドメインビュー]

セキュリティは常に最重要事項であり、Cloudronはhttps://cloudron.io/documentation/security/ [ターンキーセキュリティ]を提供します。これにはCloudronインストールの詳細の追跡が含まれます。 * Activity *ビューで、Cloudronに記録されたすべてのイベントとすべての構成変更を確認できます。

結論

このチュートリアルでは、Cloudronをサーバーにインストールしました。 次に、データベースを手動でプロビジョニングしたり、DNSを構成したり、証明書をセットアップしたりする必要なく、WordPressアプリをインストールしました。 このWordPressインストールは、WordPressの新しいリリースの自動更新を取得します。 バックアップを定期的にDigitalOcean Spacesに保存するようにCloudronを構成しました。 最後に、Cloudronに追加の保護と機能を提供できる他の機能を調査しました。

サーバーへのアプリの手動インストールは、エラーが発生する可能性が高く、時間がかかる複雑なプロセスです。 最新のWebアプリケーションは、インストールを複雑にする可能性のあるさまざまなデータベース、フレームワーク、およびパッケージマネージャーを使用します。 さらに、アプリケーションの保護とバックアップは別のプロセスです。 アプリを手動でインストールして最新の状態に保つには、アップストリームリリースを入念に追跡し、更新プログラムを適用する必要があります。 Cloudronは、サーバー上でアプリを簡単に展開および保守するのに役立つソリューションです。

Cloudron機能の詳細については、https://cloudron.io/documentation [ドキュメントページ]をご覧ください。

質問や議論については、https://forum.cloudron.io [フォーラム]をご覧ください。