Ion3 supports docked applications and is compatible with the docking protocols used by WindowMaker and KDE. Normally you would use:

dopath("mod_dock")

to load mod_dock, which provides a standard corner dock, toggled using MOD1+D.

However, recent versions also support docking applications in the status bar, in "system tray" style:

-- In cfg_ion.lua:
defwinprop {
   class = "foo-window-class",
   statusbar = "foo"
}

-- In cfg_statusbar.lua:
mod_statusbar.create {
   ...
   template="... %systray_foo"
}

GNOME unfortunately uses a different dock protocol. However, the docker program can adapt from this to the WindowMaker protocol. So you can include a GNOME system tray in your status bar by including docker in your X session and this in your Ion3 configuration:

-- In cfg_ion.lua:
defwinprop {
   class = "Docker",
   statusbar = "dock"
}

-- In cfg_statusbar.lua:
mod_statusbar.create {
   ...
   template="... %systray_dock"
}