Appsmith can be deployed locally or on your private instance using docker. To simplify installation, Appsmith comes with an installation script that will download all of the necessary dependencies and help you configure Appsmith.
Supported Operating Systems
macOS
Ubuntu
OpenSuse
Debian
CentOS
For Mac, Docker Desktop is required. For other operating systems, Docker will be installed automatically by the script.
Appsmith does not officially support Windows (or WSL). Please try out one of our pre-built images if your production operating system is not on the list above.
Fetch the install.sh script on the system you want to deploy Appsmith
# Downloads install.shcurl -O https://raw.githubusercontent.com/appsmithorg/appsmith/master/deploy/install.sh
Make the script executable
chmod +x install.sh
Run the script. Do not run as sudo & make sure no other processes are running on ports 80 & 443.
./install.sh
Check if all the containers are running correctly.
docker ps#Output should look like thisCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES3b8f2c9638d0 appsmith/appsmith-editor "/bin/sh -c 'while :…" 17 minutes ago Up 17 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp appsmith_nginx_1f5a365aada1c appsmith/appsmith-server:latest "/bin/sh -c /entrypo…" 17 minutes ago Up 17 minutes 0.0.0.0:8080->8080/tcp appsmith_appsmith-internal-server_184b15adf470a mongo "docker-entrypoint.s…" 17 minutes ago Up 17 minutes 0.0.0.0:27017->27017/tcp appsmith_mongo_109b42d5b0f1a redis "docker-entrypoint.s…" 17 minutes ago Up 17 minutes 0.0.0.0:6379->6379/tcp appsmith_redis_190833ba6d75a certbot/certbot "/bin/sh -c 'trap ex…" 17 minutes ago Up 17 minutes 80/tcp, 443/tcp appsmith_certbot_1
You can debug common errors faced during deployment at the link below
Appsmith auto-updates using Watchtower so you do not need to manually update your appsmith installation. In the odd event that you do, you can run the following command in the installation directory.
#!/bin/shsudo sudocker-compose pull && docker-compose rm -fsv appsmith-internal-server nginx && docker-compose up -d
To disable users from signing up on your self hosted instance, set the below env variables in your docker.env file
APPSMITH_SIGNUP_DISABLED=trueAPPSMITH_ADMIN_EMAILS=YOUR_ADMIN_EMAIL
Restart docker and Nginx using the following command
sudo docker-compose rm -fsv appsmith-internal-server nginx && sudo docker-compose up -d
This will disable allowing users other than those specified in the APPSMITH_ADMIN_EMAILS
field from signing up on your appsmith instance. Other users can only signup once they have been invited by an organization administrator.
The signup page will continue to show up but will throw an error when a user tries to sign up.
Learn about more options to restrict signup, including allowing emails with specific domains to signup at the page on Restricting Sign-up.
Appsmith ships with third-party services that improve the app building experience. All third-party services are entirely optional.
All third party services are enabled by default in our cloud-hosted version.
Our self-hosted version allows you to configure your own keys to enable third party services such as Google OAuth. To enable a service, simply open the folder of your Appsmith installation and edit the docker.env file.
Each service requires a specific key or configuration to be enabled. Configure the service of your choice using the following guides
Email
You may need root access to modify the docker.env file.
Restart docker and Nginx using the following command
sudo docker-compose rm -fsv appsmith-internal-server nginx && sudo docker-compose up -d