デジタル海洋への増幅サーバーの展開
6440 ワード
こんにちは!このポストでは、デジタルオーシャンにあなたのアンプサーバーを展開する方法を教えてくれます.APIを要求することができます作成、またはデータを削除し、データを取得するなど.
ディジタル海洋液滴の設置
今、私たちのサーバーを実行するには、我々は、デジタルオーシャンを提供する仮想マシンを持っている必要があります. デジタルオーシャンの雲へwebsite .
をクリックし、ドロップダウンをクリックします. 液滴の仕様を選択
Ubuntuをディスクイメージとして使用します.次に、あなたの要件に応じて計画を選択します.
次に、データセンターを選択します.私はあなたに最も近いセンターを選択することをお勧めします.
私は常にsshキー認証を使用することをお勧めします.パスワード認証より安全で良い
最後に、作成ボタンをクリックしてドロップレットを作成します.液滴が準備できるように30秒から1分かかるかもしれません.
液滴の設置
あなたの液滴が作成されたので、必要なパッケージをインストールする必要があります.液滴の設定手順は次のとおりです. 端末を開く ラン これで、液滴にうまく接続していることがわかります. ノードの最新バージョンを閉じる- このコマンドを実行してnodejsをインストールします. Dockerを次のコマンドでインストールします. PM 2をインストール
プロジェクトの設定
NODEJSをインストールしたので、次の手順に従います. リポジトリをクローンしてください-ホームディレクトリまたは他のディレクトリでgitを使用している倉庫をクローン化してください ディレクトリをソースコードのディレクトリに変更します. オプション:実際には、管理者UIフォルダを削除することができます. ディレクトリをサーバーフォルダに変更します 必要な依存関係をインストールする インストールが完了するのを待ちます Prismaクライアントの生成 データベースを起動する データベースの初期化 ポートを3000から80に変更しました.なぜこれを行う必要がありますか?さて、ユーザがAPIにアクセスするために特定のポストに行くのを許してはいけません.ブラウザのデフォルトポートは80ですので、ポートを変更しました.このようにして、ユーザは ナノエディタを起動する 最後に、生産用アプリケーションを構築します. お使いのサーバーがうまく動作している場合は、実際にテストすることができます.ラン 実行中のコードを終了すると、サイトがハングアップし、読み込みを続け、このエラーを取得します さて、バックグラウンドでこのコードを実行するには、このコマンドを使用します.
ドメインの作成
今、もちろん、あなたは、ドロップアウトのIPアドレスを介してAPIへのアクセスを提供しません.そこで、ドメインを使用します.ドメインを購入してください(私はサイトから無料でドメインを買いました)
ドメインの設定
次の手順に従います Digital Oceanの家の左のバーのドメインオプションをクリックしてください 次に、「入力ドメイン」という入力ボックスが表示されます.そこにドメインを入力します.
「ドメインを追加」をクリックします レコード作成 次に、「Create New Records」の下のメニューのAボタンをクリックしてください
ドメインが何をするかを表すサブドメインを作成できます.APIを展開しているように、APIを使用できます.コマース.サブドメインを作成したくない場合は"@"を使用します.次に、“ウィルリダイレクト”の下に、あなたの滴を選択します.をクリックします
ネームサーバの追加 今、異なるドメインプロバイダは、ネームサーバーを設定するための異なる場所を持っています.「DNSレコードの下では、3つのネームサーバを動かすでしょう. CNNameの追加 メニューのcnameオプションに移動します.ホスト名を入力します
注意:液滴がドメイン上で起動するのに時間がかかるかもしれません.
完了!あなたが正常にデジタル海にサーバーを展開している!
APIのテスト
サーバーをテストし、サーバーをテストするまでの時間が正常にできました.いくつかのリクエストを行い、出力をチェックします. ユーザーのリクエストを取得する
エンディング
私はあなたがデジタル海にあなたのアプリケーションサーバーを展開する方法を理解していることを願っています.
結論
私は、感謝したくないYuval Hazaz この驚くべきプロジェクトのためにも、このチュートリアルを作るのを助けるために.
マイgithub profile
ディジタル海洋液滴の設置
今、私たちのサーバーを実行するには、我々は、デジタルオーシャンを提供する仮想マシンを持っている必要があります.
をクリックし、ドロップダウンをクリックします.
Ubuntuをディスクイメージとして使用します.次に、あなたの要件に応じて計画を選択します.
次に、データセンターを選択します.私はあなたに最も近いセンターを選択することをお勧めします.
私は常にsshキー認証を使用することをお勧めします.パスワード認証より安全で良い
最後に、作成ボタンをクリックしてドロップレットを作成します.液滴が準備できるように30秒から1分かかるかもしれません.
液滴の設置
あなたの液滴が作成されたので、必要なパッケージをインストールする必要があります.液滴の設定手順は次のとおりです.
ssh root@<host>
ホストがあなたの液滴のIPv 4であるところ.あなたの液滴メニューから行くことによって、このIPを得ることができます.curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
apt install docker-compose
npm install -g pm2
プロジェクトの設定
NODEJSをインストールしたので、次の手順に従います.
git clone <repository_url>
cd <folder_name>
cd server
npm install
npm run prisma:generate
npm run docker:db
npm run db:init
http://<host>/
行く代わりにhttp://<host>:3000/
. 私は、これが意味することを望みます.nano src/main.ts
(サーバ/ディレクトリにあることを確認してください).あなたはこのコンテンツで行を見つける必要がありますconst { PORT = 3000 } = process.env;
. これを変えるconst { PORT = 80 } = process.env;
プレスCtrl + X
then Y
then Enter
npm run build
. これはフォルダを作成しますdist
. node dist/main.js
そして、このウェブサイトに行きなさいhttp://<host>/graphql
, ホストがあなたの液滴のIPv 4であるところ.<url> took too long to respond
pm2 start dist/main.js
. 今、あなたが再びサイトに行くならば、あなたはそれをレンダリングするのを見るべきです.驚くべき!ドメインの作成
今、もちろん、あなたは、ドロップアウトのIPアドレスを介してAPIへのアクセスを提供しません.そこで、ドメインを使用します.ドメインを購入してください(私はサイトから無料でドメインを買いました)
https://www.freenom.com/en/index.html
).ドメインの設定
次の手順に従います
「ドメインを追加」をクリックします
ドメインが何をするかを表すサブドメインを作成できます.APIを展開しているように、APIを使用できます.コマース.サブドメインを作成したくない場合は"@"を使用します.次に、“ウィルリダイレクト”の下に、あなたの滴を選択します.をクリックします
ns<number>.digitalocean.com
). それらをコピーして、サーバーに追加してください(特定のドメインプロバイダーの上でチュートリアルに従うことによってそうする方法を見つけることができます).www
and @
の下では"の別名です.「レコードを作成」をクリックします注意:液滴がドメイン上で起動するのに時間がかかるかもしれません.
完了!あなたが正常にデジタル海にサーバーを展開している!
APIのテスト
サーバーをテストし、サーバーをテストするまでの時間が正常にできました.いくつかのリクエストを行い、出力をチェックします.
import fetch from "node-fetch"
fetch("http://<your_website>/api/users" , {
method: "GET",
headers: {
"Authorization": "Basic YWRtaW46YWRtaW4="
}
}).then((res) => res.json())
.then((data) => console.log(data))
上記のコードを実行すると、利用可能なユーザーの一覧が表示されます.エンディング
私はあなたがデジタル海にあなたのアプリケーションサーバーを展開する方法を理解していることを願っています.
結論
私は、感謝したくないYuval Hazaz この驚くべきプロジェクトのためにも、このチュートリアルを作るのを助けるために.
マイgithub profile
Reference
この問題について(デジタル海洋への増幅サーバーの展開), 我々は、より多くの情報をここで見つけました https://dev.to/asiancat54x/deploying-amplication-app-to-digital-ocean-5d7kテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol