Running OpenClaw on a Synology DiskStation is a convenient way to host the system permanently in your home lab without dedicating a separate server. Synology’s Docker support makes deployment straightforward, but there are a few details that are important to get right, especially regarding networking and persistent storage. This guide explains how to run OpenClaw as a Docker container on a Synology NAS and make it accessible from your network.

The first requirement is that your Synology NAS supports Docker. Most Intel-based DiskStations provide this through the Container Manager package, which replaced the older Docker package in DSM 7. Install Container Manager from the Package Center if it is not already present. Once installed, it provides a graphical interface for managing containers, images, networks, and volumes.
The next step is to obtain the OpenClaw container image. Open the Container Manager interface and navigate to the image registry. Search for the OpenClaw image hosted on Docker Registry and download alpine/openclaw:latest. The image will then appear in your local image list and can be used to create a container.
When creating the container, the most important configuration is the port mapping. OpenClaw exposes its web interface and API through port 18789 inside the container. To access it from your network, this internal port must be mapped to a port on the NAS. In the container settings, create a port mapping from port 18789 on the NAS to port 18789 in the container. Once the container is running, the OpenClaw interface should be reachable from a browser using the NAS address followed by the port number, for example http://NAS-IP:18789.
Persistent storage is another important part of the setup. Without a mounted volume, OpenClaw would lose its configuration and stored data every time the container restarts. Synology makes it easy to mount a shared folder as a container volume. Create a shared folder on the NAS, for example openclaw-data, and map it to the internal container directory /home/node. This directory is where OpenClaw stores its configuration, credentials, and internal state. Mapping it to a persistent location ensures the data survives container updates and restarts.
To ensure that /home/node is the directory that OpenClaw uses, set a Docker environment variable OPENCLAW_HOME_VOLUME=/home/node to specify the persistance data directory your OpenClaw will use inside the container. This folder then needs to be mapped within your volume config.
Also make sure that you start your container using the host network not the bridge network option on Synology!
A common issue when running OpenClaw in containers is that the gateway process may bind only to the loopback interface inside the container. When that happens, Docker cannot forward the port to the outside network even if the port mapping exists.
See the log message when OpenClaw only is accessible via local loopback address:
10:48:29+00:00 [gateway] listening on ws://127.0.0.1:18789 (PID 15)
When running OpenClaw on your Synology Disk as a Docker container, you of course need to access the control UI at least from your local network. Therefore, you need to open the openclaw.json config on your mapped drive and modify the json config to allow ‘remote’ access as shown below:
{
"messages": {
"ackReactionScope": "group-mentions"
},
"agents": {
"defaults": {
"maxConcurrent": 4,
"subagents": {
"maxConcurrent": 8
},
"compaction": {
"mode": "safeguard"
},
"models": {
"openai/gpt-4o": { "alias": "gpt-4o" }
},
}
},
"gateway": {
"mode": "remote",
"bind": "lan",
"port": 18789,
"controlUi": {
"enabled": true,
"allowInsecureAuth": true,
"allowedOrigins": [
"http://192.168.0.110:18789",
"http://localhost:18789"
]
},
"auth": {
"mode": "token",
"token": "406730c8d1b4a2210740b51cb5aeb79a4d9e69b363bd4af3"
}
},
"meta": {
"lastTouchedVersion": "2026.4.2",
"lastTouchedAt": "2026-04-05T09:14:15.877Z"
}
}
After a restart of the container you will see the correctly bound remote address as 0.0.0.0:
10:48:29+00:00 [gateway] listening on ws://0.0.0.0:18789 (PID 15)
After configuring the image, port mapping, volume, and environment variable, the container can be started from the Container Manager interface. Within a few seconds the OpenClaw services should initialize. You can verify that everything started correctly by opening the container logs in Synology’s interface. When the gateway reports that it is listening on port 18789, the web interface should already be reachable.
Accessing the interface is done through any browser in the local network by navigating to the NAS address with the configured port. For example, if the DiskStation’s address is 192.168.1.50, the OpenClaw dashboard will be available at http://192.168.1.50:18789. From there you can configure models, integrations, and automation workflows.
See my exported Synology docker configuration json file below:
{
"CapAdd" : null,
"CapDrop" : null,
"cmd" : "node openclaw.mjs gateway --allow-unconfigured",
"cpu_priority" : 50,
"enable_publish_all_ports" : false,
"enable_restart_policy" : false,
"enable_service_portal" : null,
"enabled" : true,
"env_variables" : [
{
"key" : "PATH",
"value" : "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
},
{
"key" : "NODE_VERSION",
"value" : "24.14.0"
},
{
"key" : "YARN_VERSION",
"value" : "1.22.22"
},
{
"key" : "OPENCLAW_BUNDLED_PLUGINS_DIR",
"value" : "/app/extensions"
},
{
"key" : "COREPACK_HOME",
"value" : "/usr/local/share/corepack"
},
{
"key" : "NODE_ENV",
"value" : "production"
},
{
"key" : "OPENCLAW_GATEWAY_HOST",
"value" : "0.0.0.0"
},
{
"key" : "OPENCLAW_GATEWAY_PORT",
"value" : "18789"
},
{
"key" : "OPENCLAW_HOME_VOLUME",
"value" : "/home/node"
},
{
"key" : "OPENAI_API_KEY",
"value" : "sk-proj-YOUR_OWN_KEY"
}
],
"exporting" : false,
"id" : "97f22cd4bde45c18edf72be48c550d0b2cf8474374d058edd87780d91fb672d3",
"image" : "alpine/openclaw:latest",
"is_ddsm" : false,
"is_package" : false,
"links" : [],
"memory_limit" : 0,
"name" : "alpine-openclaw",
"network" : [
{
"driver" : "bridge",
"name" : "bridge"
}
],
"network_mode" : "bridge",
"port_bindings" : [
{
"container_port" : 18789,
"host_port" : 18789,
"type" : "tcp"
},
{
"container_port" : 18791,
"host_port" : 18791,
"type" : "tcp"
}
],
"privileged" : false,
"shortcut" : {
"enable_shortcut" : false,
"enable_status_page" : false,
"enable_web_page" : false,
"web_page_url" : ""
},
"use_host_network" : false,
"volume_bindings" : [
{
"host_volume_file" : "/homes/user/Drive/_SynologyConfiguration/openclaw",
"mount_point" : "/home/node",
"type" : "rw"
}
]
}
Running OpenClaw on a Synology NAS offers a compact and energy-efficient deployment model. The NAS provides continuous uptime, persistent storage, and an easy management interface for container updates and monitoring. Once deployed, OpenClaw can operate as a long-running service on the network without requiring manual intervention, making the DiskStation a practical platform for experimenting with autonomous agents and AI automation systems.
