Webサイト制作コースのお申し込みはこちら

AWS Amplifyについてまとめています。

AWS Amplifyは、モバイルアプリのバックエンド自動構築をおこなうサービス

AWS Amplifyは、モバイルアプリ開発用のサービス。

ウェブアプリやスマホのモバイルアプリとバックエンドサービスをつなぐサービスです。AWS Amplifyを使うと、AWSによる認証やデータベースアクセスなどのバックエンドサービスを自動構築できます。また、Gitリポジトリと連携して、アプリの修正や機能追加によるシステム更新時のデプロイを自動化できます。開発者はアプリの開発のみに注力できるというわけです。

関連)AWS Amplify(アプリケーションの構築とデプロイ)| AWS

Amplify でサポートされているのは、JavaScript、React、Angular、Vue、Next.jsなどの一般的なウェブフレームワークと、Android、iOS、React Native、Ionic、Flutterといったモバイルフレームワークです。

AWS Amplify を使うことで、モバイルアプリを世界中にデプロイ&ホストするためのフル管理されたサービスが提供されます。世界中の人が使うような大規模なアプリだとしても、Amazonのコンテンツ配信ネットワークを使って安定して配信ができるんですね。アプリ更新時に負荷がかかってサーバが落ちてしまうかも…といったことを心配する必要はありません。Gitリポジトリ(GitHub、Bitbucket、GitLab、AWS CodeCommit)と連携することで、バージョン管理とテスト、ビルド、デプロイの自動化を実現する CI/CD ワークフローを備えています。

【関連記事】
GitHubはソースコードのホスティングサービス 使い方や日本語での開発例の紹介

AWS Amplifyの機能

Amplifyの機能をもう少し具体的に見ていきましょう。Amplifyは、モバイルアプリを開発するためのフレームワークで、フロントエンドとバックエンドをつなぐ部分が楽に開発できるのが特徴。ツールとしては、Amplify Consoleという管理画面と、バックエンドを構築するAmplify CLIというコマンドライン環境で構成されています。

Amplify Console

Amplify Consoleは、ウェブアプリを継続的にデプロイ&ホスティングするための管理画面。React、Angular、Vue.js、Ionic、Ember などのフレームワークのフロントエンドおよびバックエンドアセットのホストをサポートします。Gatsby、Eleventy、Hugo、VuePress、Jekyll などの静的サイトジェネレーターもサポート。

Amplify Consoleの画面でアプリケーション名を決めて入力すると、その場でアプリケーション専用のAmplify Consoleが構成されます。

関連)AWS Amplify Console

Amplify Consoleで、「Frontend environments」でソースコードをホストするGitリポジトリ(GitHubやBitbucket)などを設定します。

「Backend environments」では、アプリのデータモデル、アプリのコンテンツ管理、ログイン・サインアップの構成(認証)、ユーザとグループの作成などをおこないます。

Amplify CLI

Amplify CLIは、Linuxコマンドとして提供されています。たとえばOSがubuntuの場合、以下のコマンドで、amplifyというコマンドがインストールされます。

$ npm install -g @aws-amplify/cli

インストール時に、エラーが出力されるケースがあります。

 :
 :
npm ERR! code EACCES
npm ERR! syscall access
npm ERR! path /usr/local/lib/node_modules
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR!  { Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR!   stack: 'Error: EACCES: permission denied, access \'/usr/local/lib/node_modules\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'access',
npm ERR!   path: '/usr/local/lib/node_modules' }
 :
 :

メッセージに「permission denied」というテキストが確認されたら、以下のようにコマンドを変更して実行すると解決する場合があります。

sudo npm install -g @aws-amplify/cli --unsafe-perm=true

関連)Amplify CLI をインストールする際に permission denied 的なエラーが発生する問題 – Qiita

amplifyコマンドを実行すると、質問形式で必要な値を入力したり選択肢を選ぶ表示が出ます。なお、実行時にawsへのログインを求められることがあります。ブラウザが自動的に起動するのでログイン操作をおこなうと、amplifyコマンドの続きが実行されるんですね。

以下は、amplifyコマンドでREST APIを追加する例です。

amplify add api

? Please select from one of the below mentioned services:
> REST
? Which service would you like to use
> API Gateway + AWS Fargate (Container-based)
? Provide a friendly name for your resource to be used as a label for this category in the project:
> containerb5734e35
? What image would you like to use
> ExpressJS - REST template
? When do you want to build & deploy the Fargate task
> On every "amplify push" (Fully managed container source)? Do you want to restrict API access
> No

関連)Amplify CLIを使い、労力ゼロでGraphQL/REST APIやウェブホスティング用にコンテナをデプロイする | Amazon Web Services ブログ

AWS Amplify まとめ

ポテパンダの一言メモ
  • AWS Amplifyはモバイルアプリ開発用のフレームワークで、Amplify ConsoleとAmplify CLIが提供されている
  • Amplify Consoleは、フロントエンドとバックエンドの設定やデプロイなどを設定するウェブ画面
  • Amplify CLIは、linuxベースのコマンドでバックエンドのAWSサービスを自動的に構築する

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。