Maintenance Mode¶
Sometimes updates or changes in the configuration are necessary, and it's important to limit access to the server during this period. Enabling maintenance mode ensures that only dedicated IP addresses can access the server, while all other users see a simple maintenance page with a 503 Service Unavailable
status code.
Enabling Maintenance Mode¶
Here's how to configure such a maintenance page using Caddy:
- Go to
/opt/seatable-compose/
- Create a copy of your
seatable-server.yml
and name itmaintenance.yml
- Replace the current labels of your SeaTable Server with the following labels.
- Replace
<your-allowed-ip>
with one IP adresses, that should have access to your server. - Open your
.env
file and replaceseatable-server.yml
withmaintenance.yml
(in the variableCOMPOSE_FILE
) - Run
docker compose up -d
...
labels:
caddy: ${SEATABLE_SERVER_PROTOCOL:-https}://${SEATABLE_SERVER_HOSTNAME:?Variable is not set or empty}
caddy.@blocked: 'not remote_ip <your-allowed-ip> private_ranges'
caddy.respond: '@blocked "SeaTable Cloud is currently undergoing maintenance. The service will be restored shortly. Thank you for your patience." 503'
caddy.header.Retry-After: 3600
caddy.reverse_proxy: "{{upstreams 80}}"
...
How does maintenance look like¶
If you are accessing your system from an IP address that has been specified in your labels, you can continue using SeaTable as usual.
All other users will see a maintenance page displaying the following message:
Disable Maintenance Mode¶
To disable maintenance mode, update your .env
file by replacing maintenance.yml
with seatable-server.yml
. Then, run the command:
docker-compose up -d
Your SeaTable server will once again be accessible to all users.