Docker Example

NOTE: This section is outdated.

For certain environments, running your robot in a standard docker container on your server or workstation is perfectly reasonable. You can use this example to help get your robot running.

Production Container

For the example, you'll need to create an empty directory named after your robot, copy the robot's .env file to <botname>/environment, and run your robot from that directory.

A command similar to this is suitable for a Linux host OS using journald for logging. Using Clu:

$ docker container run --name "clu" --restart unless-stopped -d \
	  --log-driver journald --log-opt tag="clu" \
	  --env-file environment -e HOSTNAME="my.host.name" \
	  quay.io/lnxjedi/gopherbot:latest

Then, to verify your robot is running:

$ docker logs clu
Info: PID == 1, spawning child
Info: Starting pid 1 signal handler
Initialized logging ...
...
Info: Initializing plugin: citools
Info: Initializing plugin: ssh-admin
Info: Robot is initialized and running

Note: when running on Linux, you could use podman in place of docker.