These are the startup steps for AWS Cloud9. The Platform should be set to Ubuntu Server 18.04 LTS.
- Setup the git configuration variables
git config --global user.name "Jagveer Singh" git config --global user.email "[email protected]" git config --global core.excludesfile "~/.gitignore" git config --global color.ui true git config --global push.default current sudo ln -s /bin/nano /usr/bin/nano
- Add the git aliases by running this command
curl https://gist.githubusercontent.com/pritdeveloper/703cb04659cd37d836fadbe0f02b0df6/raw >> ~/.gitconfig
- Copy the
.gitignorefile by running the commandcurl https://gist.githubusercontent.com/pritdeveloper/acfd4edd5cc3f43cb6b5f3338acd9fdf/raw > ~/.gitignore
Install the composer package for running the composer command by running this command.
sudo apt install composer -yThis is optional and only needed if you want to run the
composercommand.
Enable the apache2 rewrite mod by running this command.
sudo a2enmod rewrite- Open terminal and run this command:
sudo vi /etc/apache2/envvars
hey hey hey use insert command here by click i then after write export APACHE_RUN_USER=ubuntu,export APACHE_RUN_GROUP=ubuntu click esc then :wq
- Make the apache run user and group as
ubuntuby changing these lines:export APACHE_RUN_USER=ubuntu export APACHE_RUN_GROUP=ubuntu
- Edit the
~/.basrcfile by running this command:sudo vi ~/.bashrc - add this code
if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi
- Create the
.bash_aliasesfile with this commandcurl https://gist.githubusercontent.com/pritdeveloper/5cd890652c2da532efac5d4558971e7a/raw > ~/.bash_aliases
- reload the terminal by running this command:
. ~/.bashrc
- Make the
000-default.conffile by running command:curl https://gist.githubusercontent.com/pritdeveloper/6f9eb3a67f9689011db6d6c1341e1323/raw | sudo tee /etc/apache2/sites-enabled/000-default.conf - Restart the apache server by running:
sudo service apache2 restart
- To reset the mysql root password, follow this link.
- To install phpmyadmin, simply run this command
sudo apt install phpmyadmin -y
- There is a Warning in phpmyadmin which can be fixed by editing file by running this command
sudo vi /usr/share/phpmyadmin/libraries/sql.lib.php sudo vi /usr/share/phpmyadmin/libraries/plugin_interface.lib.php
- goto line: 613, 551
- replace the line with
|| (count($analyzed_sql_results['select_expr']) == 1 if ($options != null && count((array)$options) > 0) {
- Click on the
Manage EC2 Instancelink in the top right of Cloud9 IDE and on the next screen click on the security group under theDescriptiontab - Now click on the
Inboundtab and click onEditbutton. - Add new rules and set the
Typeto HTTP and HTTPS and clickSave
The elastic IP which are associated to an instance which is in stopped state are charged on an hourly basis. Please check the pricing before continue.
-
Open the
AWS Management Consoleand Open theEC2Service under top leftServicesdropdown. -
Under the
Network Securityin left sidebar, Click onElastic IPs. -
Click on
Allocate new addressand then click onAllocatebutton. -
Note the newely created IP address and then click on
Close. -
Now from the list select the newely created IP and then on top
Actionsdropdown, select theAssociate addressaction. -
Set the following:
Resource type: InstanceInstance: {Your newely created cloud9 instance}Private IP: {the one shown in list}
Keep the
Reassociationcheckbox unchecked -
Click on
Associatebutton. -
Now you can open the website on this
There is a new tutorial for this https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-18-04
- Installing Certbot
sudo add-apt-repository ppa:certbot/certbot sudo apt install python-certbot-apache
- Obtaining an SSL Certificate
sudo certbot --apache -d example.com -d www.example.com
- Verifying Certbot Auto-Renewal
sudo certbot renew --dry-run
- Install the
opensslpackage by runningsudo apt-get install openssl sudo a2enmod ssl sudo service apache2 restart
- Add directory to store certificate files
sudo mkdir /etc/apache2/ssl
Make sure you have added a domain with
Arecord pointing to theIPv4 Public IPof the instance after associating theElastic IPwith the instance.
- Get a free ssl certificate on sslforfree.com and follow the instructions to download the
sslforfree.zipfile on a location on your computer. - Upload the
sslforfree.zipfile from your computer in theAWS IDEon the root of the workspace. - Copy and extract the zip file on the
ssldirectory by running this command:sudo cp /home/ubuntu/environment/sslforfree.zip /etc/apache2/ssl/sslforfree.zip sudo unzip /etc/apache2/ssl/sslforfree.zip sudo rm /home/ubuntu/environment/sslforfree.zip /etc/apache2/ssl/sslforfree.zip
- Now you can open the website on
httpswithout any issues.
Keep in mind that the
sslforfree.comprovides ssl certificate for 3 months and you have to update the certificate in order to use it for longer.