優れたソフトウェアと実用的なチュートリアル
Amazon Lightsail 3ヶ月間無料VPSアプリケーションチュートリアル
ライトセイル 使いやすい仮想プライベートサーバー(VPS)は、コンテナなどのクラウドリソースを予測可能な低価格でシンプルに管理できるクラウドサービスです。わずか数クリックでウェブサイトやアプリケーションを作成できます。ネットワーク、アクセス、セキュリティ環境を自動的に構成します。カスタムウェブサイトを迅速に作成し、次のような事前構成済みのアプリケーションを使用できます。 ワードプレス、Magento、Prestashop、 ジュームラ、数回クリックするだけでブログ、電子商取引、個人の Web サイトを構築し、カスタマイズできます。
期間限定で、Lightsail を 3 か月間無料でお試しください。Amazon ライトセイル お客様は無料利用枠を延長して、選択したバンドルを 3 か月間無料で使用できるようになります。
アマゾン ライトセイル。それは AWS わずか数分で、独自の仮想サーバー上でアプリケーションを実行できる最も簡単な方法です。本日、Amazon Lightsail にコンテナベースのワークロードをデプロイできるようになりました。Amazon Lightsail が仮想サーバーに提供するのと同じシンプルさとバンドル価格で、コンテナイメージをクラウドにデプロイできるようになりました。
Lightsailを無料でお試しください
Lightsailを無料でお試しいただくには、Amazon Cloudアカウントが必要です。Amazon Cloudアカウントのお申し込みは、以下のリンクをクリックしてください。
具体的な申請手順については以下を参照してください。Amazon無料クラウドサーバーアカウントの申請プロセス
Amazon ライトセイル AWSは、アプリケーションやウェブサイトのデプロイに必要なすべての機能を、費用対効果が高く分かりやすい月額プランで提供する、使いやすいクラウドサービスです。シンプルなワークロードやウェブサイトのデプロイ、あるいはAWSの導入開始に最適です。 ライトセイル お客様には、クラウドとAWSをすぐに使い始めたい開発者、中小企業、スタートアップ企業などが含まれます。AWSクラウドに慣れてきたら、いつでも幅広いAWSサービスを導入できます。
ライトセイル 背景には Amazon エラスティックコンピューティングクラウド (EC2)、Amazon リレーショナルデータベースサービス (RDS)、アプリケーションロードバランサ およびその他の AWS サービスと連携し、AWS に期待されるレベルのセキュリティ、信頼性、拡張性を実現します。
- 展開先 ライトセイル あなたはできる6つのオペレーティング システム(4 リナックス リリース、フリーBSD または ウィンドウズ)、7 つのアプリケーション(例: ワードプレス、ドルパル、ジュームラ、プレスク…)および 7 種類のスタック(例: Node.js、ランプ、ギットラボ、ジャンゴ…)。 しかし ドッカー コンテナはどうですか?
- 今後、Amazon ライトセイル 開発者にコンテナをクラウドにデプロイする簡単な方法を提供します。 ドッカー イメージをダウンロードして、自動的にコンテナ化します。Amazon ライトセイル クラウドコンテナで実行されるアプリケーションにサービスを提供するHTTPSエンドポイントを提供します。負荷分散された接続を自動的に設定します。 TLS エンドポイントを監視し、TLS証明書を処理します。応答のないコンテナを自動的に置き換え、 DNS 名前を変更し、新しいバージョンがスムーズに実行され、公開できる状態になるまで古いバージョンを維持するなどします。
簡単な例を見てみましょう パイソン ウェブアプリケーションをコンテナとしてデプロイして、どのように動作するかを見てみましょう。 AWS コマンドラインインターフェイス (CLI) そして ドッカーPython は必須ではありません。コンテナにのみインストールされます。
最初に使ったのは Flask シンプルなアプリケーションフレームワークPython REST APIを作成します。コンテナ内で実行できるプログラミング言語とフレームワークであれば、どれでも使えます。私はシンプルで簡潔なPythonとFlaskを選択しました。
次のコマンドを安全にコピー/貼り付けることができます。
次に、コンテナ イメージを構築するために必要な手順と情報を含む Dockerfile を作成します。
# Dockerfileを作成します echo ' FROM python:3 ADD helloworld.py / RUN pip install flask RUN pip install flask_restful EXPOSE 8080 CMD [ "python", "./helloworld.py"] ' > Dockerfile
これでコンテナを構築できます。
docker build -t ライトセイル-hello-world
ビルド コマンドはコンテナをビルドするときに多くの行を出力し、最終的に次のメッセージで終了します (実際の ID は異なります)。
7848e055edff が正常にビルドされました。lightsail-hello-world:latest のタグが正常に付けられました。
ラップトップでコンテナを起動してテストしました。
docker run -it --rm -p 8080:8080 ライトセイル-hello-world
ブラウザを接続して ローカルホスト:8080
アプリケーションに満足したら、コンテナをプッシュします ドッカー ハブ。
docker タグ lightsail-hello-world sebsto/lightsail-hello-world docker ログイン docker プッシュ sebsto/lightsail-hello-world
私はもう Dockerハブ コンテナの準備ができたので、作成してみましょう。 ライトセイル コンテナ サービス。
私はブラウザで Amazon ライトセイル コンソールコンテナサービスがデプロイされ、管理できることがわかります。新しいサービスを作成するには、 コンテナサービスを作成する(コンテナ サービスの作成):
Lightsailコンテナコンソール
次の画面では、アプリケーションで利用可能なvCPUとメモリに基づいて、使用するコンテナのサイズを選択します。また、高可用性またはスケーラビリティの観点から、並列実行するコンテナインスタンスの数も選択します。コンテナインスタンスの数やその機能(vCPUとRAM)は、サービスを中断することなくいつでも変更できます。これらのパラメータは、AWSが毎月請求する料金に影響します。料金は画面に表示され、次のビデオに示すように動的に調整されます。
画面の少し下の方で、今のところはデプロイメントをスキップすることにしました。サービスに「こんにちは世界”」。クリックすると コンテナサービスを作成する(コンテナ サービスを作成します)。
サービスを作成したら、クリックします 最初のデプロイメントを作成する(最初のデプロイメントを作成)をクリックしてデプロイメントを作成します。デプロイメントとは、作成したサービスにデプロイする特定のコンテナイメージとバージョンの組み合わせです。
私は画像の名前を決め、フォーマットを使いました ユーザー/ :タグ
イメージのアドレスを入力してください。ここで環境変数、ポートマッピング、起動コマンドも入力できます。
私のコンテナはポート TCP 8080 でネットワーク サービスを提供するため、そのポートをデプロイメント構成に追加しました。開いているポート設定は、コンテナネットワーク内の他のシステムに開かれるポートとプロトコルを指定します。他のコンテナまたはVMは、コンソールまたは公共
私の Dockerファイル
これらのポートはいずれもパブリックインターネットに公開されません。
しかし、この例では、Lightsailを使ってパブリックインターネットからのトラフィックをこのコンテナにルーティングしたいので、このコンテナを こんにちは世界 サービスのエンドポイントが追加されました。エンドポイントはTLS用に自動的に構成されるため、証明書をインストールしたり管理したりする必要はありません。
1回のデプロイメントにつき最大10個のコンテナを追加できます。準備ができたら、 保存して展開する(保存して展開します)。
しばらくすると、デプロイメントがアクティブになり、エンドポイントをテストできるようになります。
エンドポイントのDNSアドレスはコンソールの右上にあります。必要に応じて独自のDNSドメイン名を設定できます。
ブラウザで別のタブを開き、https エンドポイント URL を指定します。
新しいバージョンをデプロイする必要がある場合は、コンソールを使用してデプロイメントを変更します。アプリケーションコードの変更、ビルド、そして新しいバージョンのコンテナのプッシュの詳細については説明を省略します。
sebsto/lightsail-hello-world:v2
2番目のコンテナイメージバージョンが利用可能です。 Amazon ライトセイル コンソール、クリック 展開(展開)をクリックし、 デプロイメントを変更する(デプロイの変更)コンテナイメージの新しいバージョンの完全な名前(タグを含む)を入力し、 保存して展開(保存して展開します)。
しばらくすると、新しいバージョンが展開され、自動的にアクティブ化されます。
ブラウザで新しいタブを開き、 Amazon ライトセイル エンドポイントURIはコンソールの右上に表示されます。JSONバージョンが異なっているようです。現在の値は
2
のバージョン
財産。
展開に問題があった場合、 Amazon ライトセイル サービスの中断を避けるため、最後のデプロイメントは自動的にアクティブに維持されます。また、不要な変更を元に戻すために、以前のデプロイメントバージョンを手動でアクティブ化することもできます。
私はちょうど Dockerハブ 最初のコンテナイメージをデプロイしました。 AWS コマンドラインインターフェイス (CLI) ノートパソコンからサービスを管理し、ローカルコンテナイメージを展開します。コンテナイメージをノートパソコンから直接プッシュするには Amazon ライトセイル コンテナサービス、私はインストール LightSail コントローラー プラグイン。(TL;DR) カール
、cp
そして chmod
すべてはここでの使用に適しています。また、 Dockerファイル コンテナ内で CLI を使用するには)。
コンテナ サービスを作成、一覧表示、または削除するには、次のように入力します。
aws lightsail create-container-service --service-name myservice --power nano --scale 1 aws lightsail get-container-services { "containerServices": [{ "containerServiceName": "myservice", "arn": "arn:aws:lightsail:us-west-2:012345678901:ContainerService/1b50c121-eac7-4ee2-9078-425b0665b3d7", "createdAt": "2020-07-31T09:36:48.226999998Z", "location": { "availabilityZone": "all", "regionName": "us-west-2" }, "resourceType": "ContainerService", "power": "nano", "powerId": "", "state": "READY", "scale": 1, "privateDomainName": "", "isDisabled": false、"roleArn": "" }] } aws lightsail delete-container-service --service myservice
CLI を使用してラップトップから直接コンテナ イメージをデプロイすることもできます。インストール ライトセイルctl
。
# イメージの新しいバージョン (v3) をビルドします。docker build -t sebsto/lightsail-hello-world:v3 。# 新しいイメージをプッシュします。aws lightsail push-container-image --service-name hello-world --label hello-world --image sebsto/lightsail-hello-world:v3
しばらくすると、次の出力が表示されます。
イメージ「sebsto/lightsail-hello-world:v3」が登録されました。デプロイメントではこのイメージを「:hello-world.hello-world.1」として参照してください。
私は一つ作りました lc.json
デプロイメント設定の詳細を保持するファイルです。コンソールに表示されるオプションと一致しています。前回のコマンドを報告しました。画像
属性に指定された名前:
{ "serviceName": "hello-world", "containers": { "hello-world": { "image": ":hello-world.hello-world.1", "ports": { "8080": "HTTP" } } }, "publicEndpoint": { "containerName": "hello-world", "containerPort": 8080 } }
最後に、次のコマンドで新しいサービス バージョンを作成します。
aws lightsail create-container-service-deployment --cli-input-json ファイル://lc.json
次のコマンドを使用してデプロイメントステータスを照会できます。
aws lightsail get-container-services ... "nextDeployment": { "version": 4、 "state": "ACTIVATING"、 "containers": { "hello-world": { "image": ":hello-world.hello-world.1", "command": []、 "environment": {}、 "ports": { "8080": "HTTP" } } }、...
しばらくすると、ステータスは次のように変わります。 アクティブ
(アクティブ)、エンドポイントをテストできます。
curl https://hello-world.nxxxxxxxxxxxx.lightsail.ec2.aws.dev/ {"メッセージ": "Hello Flask API World!", "バージョン": 3}
後でコンテナをデプロイする予定の場合は アマゾンECS または Amazon Elastic Kubernetes サービス変更は必要ありません。リポジトリからコンテナイメージをプルできます。 Amazon ライトセイル 同じ。
提供できるもの Amazon ライトセイル コンテナをすべてのAWSリージョンにデプロイする ライトセイル 本日より、米国東部(オハイオ)、米国東部(バージニア州北部)、米国西部(オレゴン)、アジア太平洋(ムンバイ)、アジア太平洋(ソウル)、アジア太平洋(シンガポール)、アジア太平洋(シドニー)、アジア太平洋(東京)、カナダ(中部)、ヨーロッパ(フランクフルト)、ヨーロッパ(アイルランド)、ヨーロッパ(ロンドン)そしてヨーロッパ(パリ)地域限定オファー。
いつものように、 Amazon ライトセイル 時間、価格理解しやすく、予測しやすい。Amazon ライトセイル コンテナは、コンテナのサイズ(使用するvCPU/メモリの組み合わせ)に応じて、コンテナ1つあたりの月額固定料金でご利用いただけます。サービス利用時間に応じて日割り計算された料金をお支払いいただきます。月額料金は、サービスを24時間365日稼働させた場合の最大料金です。料金はすべてのAWSリージョンで同一です。料金は、Nanoコンテナ(メモリ512MB、vCPU 0.25個)で月額7ドルから、X-Largeコンテナ(メモリ8GB、vCPUコア4個)で月額160ドルまでです。この料金には、コンテナ本体だけでなく、ロードバランサー、DNS、そして大容量のデータ転送レイヤーも含まれます。その他のAWSリージョンの詳細と料金は、こちらをご覧ください。 Lightsailの料金ページ優れた。
AmazonアカウントからAmazon Lightsail はお申し込み日から 3 か月間の無料トライアル期間をご提供いたします。ぜひ今すぐご登録ください。Lightsail無料トライアルバー、あなたが何をするのか楽しみです Amazon ライトセイル コンテナ上にどのようなソリューションが構築され、展開されるのでしょうか。
原文参照:クリックここ元の記事を見る