Guides - Deploy SeaTable through the Linode Marketplace
Quickly deploy a Compute Instance with many various software applications pre-installed and ready to use.
SeaTable is a simple and flexible database management interface with native Python automation support. It is designed to mimic the user-friendly interfaces of common spreadsheet software (like Microsoft Excel and Google Sheets). SeaTable offers advanced data linking capabilities and allows for custom data organization and visualization.
Deploying a Marketplace App
The Linode Marketplace allows you to easily deploy software on a Compute Instance using the Cloud Manager. See Get Started with Marketplace Apps for complete steps.
Log in to the Cloud Manager and select the Marketplace link from the left navigation menu. This displays the Linode Create page with the Marketplace tab pre-selected.
Under the Select App section, select the app you would like to deploy.
Complete the form by following the steps and advice within the Creating a Compute Instance guide. Depending on the Marketplace App you selected, there may be additional configuration options available. See the Configuration Options section below for compatible distributions, recommended plans, and any additional configuration options available for this Marketplace App.
Click the Create Linode button. Once the Compute Instance has been provisioned and has fully powered on, wait for the software installation to complete. If the instance is powered off or restarted before this time, the software installation will likely fail.
To verify that the app has been fully installed, see Get Started with Marketplace Apps > Verify Installation. Once installed, follow the instructions within the Getting Started After Deployment section to access the application and start using it.
Configuration Options
- Supported distributions: Debian 11
- Recommended plan: We recommend a 4GB Dedicated CPU or Shared Compute Instance for SeaTable.
SeaTable Options
The domain/subdomain for SeaTable Server (required): Enter the custom domain name you wish to use. The domain must be registered and, after deployment, you need to update your DNS records with the IP address of the new Compute Instance. See Configure DNS Records for next steps.
Get a Let’s Encrypt certificate: To deploy your application with a Let’s Encrypt certificate (recommended), select True.
Choose your timezone: Update this field to match your timezone’s identifier. For a list of timezones and their corresponding identifiers, review the List of tz database time zones Wikipedia page. Locate your timezone and copy the string under the TZ Identifier column (for example:
America/New_York
).
Limited User (Optional)
You can optionally fill out the following fields to automatically create a limited user for your new Compute Instance. This is recommended for most deployments as an additional security measure. This account will be assigned to the sudo group, which provides elevated permission when running commands with the sudo
prefix.
- Limited sudo user: Enter your preferred username for the limited user.
- Password for the limited user: Enter a strong password for the new user.
- SSH public key for the limited user: If you wish to login as the limited user through public key authentication (without entering a password), enter your public key here. See Creating an SSH Key Pair and Configuring Public Key Authentication on a Server for instructions on generating a key pair.
- Disable root access over SSH: To block the root user from logging in over SSH, select Yes (recommended). You can still switch to the root user once logged in and you can also log in as root through Lish.
"
) within any of the App-specific configuration fields, including user and database password fields. This special character may cause issues during deployment.Getting Started after Deployment
Configure DNS Records
When deploying the SeaTable app, you are required to enter a custom domain. This domain must be registered and, once your app instance has been deployed, you must configure your DNS records to point to the IP address of the associated Compute Instance.
If you have not already done so, register your domain using your preferred domain registrar.
Within your domain registrar, make sure the authoritative name servers are configured to use your preferred DNS provider (such as Linode’s DNS Manager). If you are not yet using a DNS provider, consider Linode’s DNS Manager. For instructions on creating a DNS zone and updating your authoritative name servers, review Get Started with Linode’s DNS Manager.
After the Compute Instance has been deployed, you need to add an A record to your domain within your DNS provider. When prompted, use the IPv4 address of the newly deployed Compute Instance. To locate the public IPv4 address for that instance, see Managing IP Addresses.
Finish SeaTable Deployment
Once your DNS records have been updated and have propagated, you can complete the final steps to deploy SeaTable. The SeaTable Marketplace App installs docker, downloads the SeaTable Docker image, and configures the docker-compose.yml file according to the fields set during deployment. You will need to manually run Docker and start the SeaTable app.
Navigate to the folder containing the Docker Compose file.
cd /opt/seatable/
While the Docker Compose file has been updated to include the custom domain and other settings provided during deployment, you can adjust this file as needed. To do that, open the file using your preferred text editor and modify any configuration parameters as needed. This is an optional step for those that wish to further adjust the configuration for SeaTable.
sudo nano docker-compose.yml
Bring up the Docker container to initialize the database.
docker-compose up
When you see the following message, press Ctrl + c to exit.
This is an idle script (infinite loop) to keep container running.
Bring up the Docker container again, but this time in the background (detached mode).
docker-compose up -d
Start the SeaTable service.
docker exec -d seatable /shared/seatable/scripts/seatable.sh start
Create your admin account. When prompted, enter your email address and a secure password.
docker exec -it seatable /shared/seatable/scripts/seatable.sh superuser
Access the SeaTable Web UI
Once you have completed the final steps to deploy SeaTable, you can access it via its web UI.
Open a web browser and navigate to your custom domain.
In the login prompt that appears, enter the admin email and password you created and press the Log in button.
The SeaTable web UI should appear.
From here, you can create a new base (database) and start adding data. For further instructions, review the SeaTable Quick Start Guide.
This page was originally published on