Usually the Datto RMM agent is used to manage an endpoint, like a desktop or laptop. However, in cases where you need a point of presence on the network, or can deploy only containers to an appliance and want to execute network checks against that appliance or other nodes, then containerizing the agent can potentially be useful.
This is an unsupported build that takes the standard Datto RMM agent, and helps you deploy it against a docker environment.
It only requires one environment variable - the Datto RMM site ID - which can be obtained from your admin portal.
- Job execution
- Agent Browser functions
- OS monitoring via Agent will only return info from the container environment, and is not reflective of the real host.
As Docker Hub has recently changed their rules around container registry storage, you will need to build and self-publish the image.
To build the container, simply clone and run docker build.
git clone https://github.com/ozskywalker/drmm-docker
cd drmm-docker
docker build -t ozskywalker/drmm-agent .
- Login to your Datto RMM portal (https://login.datto.com/)
- Select the site in which you want to install your containerized agent
- Go to "ADD DEVICE"
- Grab the download link for the linux agent
- Extract the GUID from the download link.
A few brief notes:
- Only one parameter is required - the Site ID - which you can pass viaa the DRMMSITE environ parameter.
- A TTY session is required for the container to operate successfully.
- If the container is killed and subsequently restarted, there is a possiblity that it may uninstall itself on the next pass, then on the subsequent startup install again and appear as a brand new device within your Datto RMM site. By using a restart value of 'always' will ensure it will self-reinstall successfully, however you will need to manually remove the old instance of the agent.
docker run -dtP -h "drmm-on-docker" --restart always -e DRMMSITE=aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee ozskywalker/drmm-agent
The installation and activation of the agent, and logs are sent to the container logs.
Simply run docker logs
to gain a historic and real-time view as to what is happening within the container.
If you wish to contribute, please fork and submit a PR request.
Issues can be lodged, however as no warranty or support is provided with this deployment, any assistance is best effort at best.