Easier way of keeping record of your bird sightings by automatically recognizing the species from their images and storing them in a database.
Video demonstration of what deploying the project would look like on AWS.
You need:
- Vagrant
- vagrant-aws plugin
- Git (optional)
(Read aws-report.pdf for detailed info)
Cd into folder you want this project to be and run
git clone https://github.com/ubaada/AI-Birdwatcher-Diary.git
(or you can download the .zip file directly from GitHub.)
- Set up a Security Group in AWS console: Inbound Rules:
Type | Protocol | Port range | Source | Description - optional |
---|---|---|---|---|
HTTP | TCP | 80 | 0.0.0.0/0 | Public web access |
HTTP | TCP | 80 | ::/0 | Allow all outbound traffic |
All TCP | TCP | 0 - 65535 | [id-of-same-security group] | Inter-VM (ec2-db) Communication |
SSH | TCP | 22 | 0.0.0.0/0 | SSH for admin |
Outbound rules:
Type | Protocol | Port range | Source | Description - optional |
---|---|---|---|---|
All traffic | All | All | 0.0.0.0/0 | Allow all outbound traffic |
- Set up SSH:
For SSH to work create a key-pair named “cosc349-l.pem” in AWS console. AWS does not allow SSH login via passwords.
Place the key file in
~/.ssh
- Create an AWS RDS MySQL database using AWS console.
- Clone the git repo and CD into it. Edit the VMs in Vagrantfile to have your AWS Security Group.
- Set up database details in
.config/db-config.php
file in the cloned repo:
<?php
$db_host = '[end-point-here]:[port-number-usually-3306]';
$db_name = '';
$db_user = '';
$db_passwd = '';
?>
- Install vagrant-aws plugin:
$ vagrant plugin install vagrant-aws
- Set up the AWS environment variables for Vagrant to be able to talk with AWS.
- Start Vagrant deployment:
$ vagrant up --provider=aws