HelloPhoenix On AWS Elastic Beanstalk, Docker, CodePipeline
Notable changes and limitations
prod.secret.exsis not supported, please use ENV variables to confugure sensitive information, e.g. keys, tokens
No Ecto- ecto is disabled but Docker container supports Ecto/Postgres, just uncomment 2 lines in
No brunch- sorry no JS monkey business since this template is used for REST/JSON APIs, I will provide a working Webpack config later.
AWS Elastic Beanstalk installation guide
Create a new EBS application called
Create a new environment using Docker platform. Choose a
Sample application for now.
Update configuration to have
AWS CodePipeline configuration
Step 1: Go to AWS CodePipeline and create a new pipeline, name it
Step 2a: Select
GitHub as a source provider
Step 2b: Click on
Connect to GitHub button
Step 2c: After being redirected to GitHub, enter your username and password
Step 2d: Enter repository name and branch
Step 3: Choose
Step 4: Choose
Elastic Beanstalk, then
hello_phoenix under Application name and then
Sample-env under Environment name
Step 5: Choose
AWS-CodePipeline-Service under Role name
Step 6: Review and click
Upon successful pipeline creation you will see that it is getting code from GitHub and deploying. Make some tea and wait.
In your AWS Elastic Beanstalk configuration console click on the URL next to the
Actions button, it should look something like
If your deployment was successful you will see default
Hello Phoenix UI.