AWS AMI
Tutorial Steps:
- Register with Amazon Web Services (AWS)
- Generate an SSH key pair
- Create an AWS Security Group
- Deploy Appsmith on an AWS cloud server
- Find Application Credentials
- Updating your Appsmith installation
Step 1: Register With Amazon Web Services
If you already have an Amazon Web Services account, you may skip this step.
Please follow the steps detailed here in order to create an account on AWS.
Step 2: Generate an SSH key pair
If you already have an SSH key pair for the AWS region you are operating in, you can skip this step.
Please follow the steps detailed here to generate a new key-pair. You need this key to SSH into your AWS EC2 instance.
Step 3: Create an AWS Security Group
If you already have an existing security group with ports 80, 443 and 22 open, you can skip this step.
Appsmith is a web application that requires ports 80 and 443 for HTTP access. It also requires port 22 to be accessible for SSH access. Please follow the steps detailed here to create a new security group.
While creating the the new security group, please follow the steps detailed here to edit the "Inbound Rules" and make ports 80, 443 and 22 accessible from anywhere.
Step 4: Deploy Appsmith On AWS Cloud
The next step is to launch a cloud server with the Appsmith Amazon Machine Image (AMI) running on it. The AWS Console lets you do this in just a couple of clicks. Follow these steps:
- Navigate to the "Amazon EC2 dashboard", select the “AMIs” option in the “Images” menu.
- Search for the Appsmith Stack by entering the search term "appsmith" in the search bar at the top.
- Select the image in the list of search results and click the “Launch” button.
- On the resulting detail page, review the available server sizes. Select the server size you wish to use and click “Review and Launch” to proceed.
- On the review page, click the “Edit security groups” link.
- On the “Configure Security Group” page, choose the option to “Select an existing security group”. Find the security group you created in Step 3 and select it. Click the “Review and Launch” button to proceed.
- Verify that the correct key pair (created in Step 2) will be used for the server.
- Confirm your selection by hitting the “Launch Instance” button.
The AWS Console will now begin spinning up the new server.
The process usually takes a few minutes. Use the EC2 Dashboard to check the status of the server. Once the server has launched, you will be able to obtain its public IP address from the EC2 Dashboard, as shown below:
At this point, you should be able to browse to the cloud server, by entering the cloud server IP address or DNS name directly into your browser’s address bar. You should now see your web app home page as shown below:
Application Credentials
By default, Appsmith boots up with default user credentials that allow you to login without needing to sign up. The default username is: appsmith@example.com
. There are two options for obtaining the password.
Option 1: Find Credentials By Checking The System Log On The AWS Cloud Console (EC2)
IMPORTANT: The application password is only available in the system log for the first 24 hours after you first start the instance. We strongly recommend that you note it down immediately on the first boot and save it in a safe place, as you will be unable to access the instance console without it. We also recommend that you change it as soon as possible for security reasons.
- Go to your EC2 instances dashboard on AWS
- Select the instance
- From the “Actions” drop-down menu, select the “Get System Log” menu item.
- Review the system log until you find the application password. You will also find the default username printed in the logs.
Option 2: Find Credentials By Connecting To Your Application Through SSH
The default application credentials are stored in a standalone file. To obtain these credentials at any time, follow these instructions:
SSH into your server using your private key
Run the following command to see your application credentials:
sudo cat /home/ubuntu/appsmith/credential
Updating Your Appsmith Installation
You can either choose to update the Appsmith installation manually or choose to enable auto-updates.
It's recommended to backup the Appsmith instance before performing an update. For more information, see How to create a backup.
Update Installation Manually
To update Appsmith manually, ssh
into the ec2
instance with the username appsmith
and run the following command:
cd appsmith && sudo docker-compose pull && sudo docker-compose rm -fsv appsmith && sudo docker-compose up -d
Enable Auto-Updates
If your Appsmith setup does not have auto-update
enabled that is the Watchtower
container is not running along with Appsmith
in the host machine
. Follow the steps below to enable auto-update:
- SSH into the
ec2
instance with usernameappsmith
- Change directory to
/appsmith
- Run the below command to stop and remove the container and its resources
docker-compose down
- Open the
docker-compose.yml
file with any text editor and uncomment the lines 13 to 23
- Save the file
- Run the below command
docker-compose up -d
If you have updated your Appsmith instance and face any issues. You can rollback the changes and restore the Appsmith instance from a backup archive.
Troubleshooting
If you encounter any errors during this process, check out this guide on debugging deployment errors, if you are still facing an issue please reach out to support@appsmith.com or join Discord Server to directly speak to the Appsmith team.