Configure Docker to Use SD Card as Data Root (e.g. WP400 with PlcVisu)
This guide explains how to redirect Docker's storage to an SD card, ideal for devices with limited internal memory (like WAGO WP400). It includes preparation, persistent mounting, and structured troubleshooting.
Software Requirements
-
Docker
[link_0] (search for WP400 Docker IPK) -
PlcVisu Software (.ipk)
[link_1] -
Root Access
Via SSH ([code_block_0]) or serial terminal
Hardware Requirements
- SD Card or SSD with USB Adapter
- Minimum Class 10 or UHS-I
- At least 8 GB (16+ GB recommended)
- Formatted as [code_block_1] or [code_block_2] (Linux-compatible)
Prerequisites
Mount SD Card and Prepare Docker Storage
1. Identify the SD Card Device
Run:
[code_block_3]
or:
[code_block_4]
Look for a device like [code_block_5] or [code_block_6]
### 2. Format the SD Card (if needed – this erases all data)
[code_block_7]
Adjust device name to match your system
You may use [code_block_8] if [code_block_1] is unsupported
### 3. Create Mount Point and Mount the SD Card
[code_block_10]
Verify with:https://edesign-doc.elrest.gmbh/en/downloads.html
[code_block_11]
4. Prepare Docker Data Directory
[code_block_12]
5. Stop Docker Before Changing Config
[code_block_13]
6. Backup Existing Docker Data (Optional)
[code_block_14]
7. Configure Docker to Use SD Card as Data Root
Edit or create:
[code_block_15]
Insert:
[code_block_16]
Save and close.
8. Start Docker Again
[code_block_17]
9. Verify Docker Storage Path
[code_block_18]
Expected result:
[code_block_19]
Optional: Make Mount Persistent After Reboot
Edit [code_block_20]:
[code_block_21]
⚠️ Ensure SD card is always available at boot
Use [code_block_22] to test
Post-Reboot Check
After reboot:
[code_block_23]
If fallback to [code_block_24] → check [code_block_25] and Docker boot timing
Troubleshooting Guide
Symptom | Cause | Solution |
---|---|---|
[code_block_26] is still [code_block_24] | SD card wasn't mounted early enough | Delay Docker start or use [code_block_28] |
[code_block_29] | Wrong filesystem format | Reformat with [code_block_30] |
[code_block_31] | SD card too small / wrong mount | Check with [code_block_32], resize SD or mount right |
[code_block_33] on [code_block_34] | Wrong permissions | Run [code_block_35] |
Docker doesn't start | Config error or missing folder | Check [code_block_36] and logs |
Final Notes
- Always stop Docker before modifying its configuration
- Do not remove SD card while Docker is running
- For critical applications: use industrial-grade SD or external SSD
- You can cleanly revert by restoring [code_block_37] and editing [code_block_38]
⚠️ Make sure the SD card is mounted before Docker starts during boot.
If the mount is too late, Docker will reinitialize in [code_block_24].
Load and Run Node-RED Docker Image on WP400
This method allows you to deploy Node-RED on a WP400 without internet access by using a pre-downloaded [code_block_40] Docker image file.
1. Download the Docker Image [code_block_40] File (from Link)
Instead of pulling from Docker Hub, download the prepared image file:
[link_2]
Save the file locally on your development PC.
2. Transfer the Docker Image File to the WP400 SD Card (Mounted Directory)
Instead of transferring the Docker image to temporary memory ([code_block_42]), you can place it directly onto the SD card mounted on the WP400. This is especially useful if the image is large and you want to avoid exhausting internal storage.
Windows
Option A – WinSCP (GUI):
- Install [link_3].
- Connect to the WP400 using SCP ([code_block_43]).
- Navigate to the mounted SD card directory, usually [code_block_44].
- Drag and drop the [code_block_45] file into [code_block_44].
Option B – Command Line with PuTTY (pscp):
[code_block_47]
macOS
Use the Terminal:
[code_block_48]
Linux
Use any terminal:
[code_block_49]
USB Stick (Alternative for All OS)
If transferring over the network is not possible:
- Copy the file to a USB stick.
- Plug the USB into the WP400.
- On the WP400, move it to the SD card:
[code_block_50]
Once the file is stored under [code_block_44], continue with Step 3: Load Docker Image from the SD Card
´
Once the file is available under [code_block_42], continue with Step 3: Load Docker Image on WP400
3. Load Docker Image on WP400
SSH into your WP400 and run:
[code_block_53]
This will load the image into your local Docker registry.
4. Run the Node-RED Container
[code_block_54]
✔ Make sure the image name ([code_block_55]) matches what [code_block_56] shows.
???? To use the SD card for persistent data, replace [code_block_57] with a full path like [code_block_58].
Access Node-RED
Open in your browser:
[code_block_59]
You now have a fully functional Node-RED instance running on WP400 without requiring direct internet access.