BFC BFC Docs
Reference

Runtime files and storage

Understand the release `_volumes` tree, remote workspaces, and persistent Docker data.

Release layout

The release _volumes directory is the portable automation workspace:

_volumes/
├── __lua_scripts/
│   ├── __TEMPLATE.lua
│   ├── examples/
│   ├── production/
│   └── headers/
├── __json_scripts/
├── __python_scripts/
├── _plugins/
├── _dependencies/
├── _iodds/
└── config/
Directory Purpose
__lua_scripts Lua templates, examples, production scripts, and editor headers
__json_scripts Command scripts and recorded interactive output
__python_scripts Python examples and type information
_plugins Generated and supplied driver assemblies
_dependencies Assemblies required by plugins and code generation
_iodds IODD source files
config Protocol-specific configuration such as Modbus and EtherNet/IP

Keep the complete tree when using generated device plugins. A script may load assemblies and headers indirectly.

Uploaded automation workspace

For a script named temperature.lua, the Setup Tool creates a remote layout similar to:

~/.bfc/containers/BFC-temperature/
└── _volumes/
    └── __lua_scripts/
        └── temperature.lua

The parent directory is mounted at /mnt/fog, so BFC Console discovers:

/mnt/fog/_volumes

Deleting that Console container through the Setup Tool also removes its remote workspace.

Setup Tool files on the controller

The Setup Tool maintains:

~/.bfc/conf.json
~/.bfc/scripts/
~/.bfc/files/
~/.bfc/containers/

These contain detected configuration, synchronized helper scripts, uploaded packages, and per-automation workspaces.

Persistent Docker volumes

MariaDB and Node-RED data live in named Docker volumes:

bfc-mariadb
bfc-nodered

Container deletion does not automatically remove these volumes. Back them up before upgrades or destructive maintenance.

Logs

Container stdout/stderr is available through the Setup Tool Console view or docker logs. The BFC runtime may also create log or cache files relative to its mounted workspace, depending on script and release configuration.

Do not edit files inside a running container's writable layer as a deployment method. Update the local _volumes source, then upload a new script workspace so the change is reproducible.

Built with ASP.NET Core and Markdig. BFC user documentation · preview release