Tuesday, 28 February 2017

codeship push to beanstalk




https://pumpdev.wordpress.com/2015/05/14/codeship-part-2-deployment-setting-up-an-aws-elastic-beanstalk-cicd-instance/


You need to follow above link to create an IAM group,

add  premission to the group, give full access of S3 and beanstalk to this group.

To make it save , you can search "beanstalk" and "S3" and just simply select everything, except "read only".

then create a user, and put this user in to this new group.

Then you will get your key and cert, you can copy them into codeship "deployment"

Then you need to create a S3 bucket and copy the bucket name to codeship  "deployment"

Note: you may need change S3 bucket permission write to Any authenticated AWS user.


then you need to create a folder : ".ebextensions"  under you root folder of your project.

create a xx.config file and put below in:

packages:
  yum:
    git: []
  rubygems:
    compass: []

and copy the suggest answer into this folder:

http://stackoverflow.com/questions/21200251/avoid-rebuilding-node-modules-in-elastic-beanstalk

Then you need to create an beanstalk instance  and select Nodejs. and use v1.3.0 

You can choose other version if you need, for example i need nodejs 0.10.31. which you need to set in the configuration.

You also need to put your ENVs into configuration. e.g. MongoURL


make sure you change your command. e.g. "node dist/server/app.js"


You static ip is the ip of your server, which is inbound and outbound ip as well, you can check by run below line in the server(you need to ssh to the server)

curl canhazip.com













No comments:

Post a comment