Skip to content

viriciti/golang-assignment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Hardware Team Golang Assignment

Intro

In this assignment, you have to manage docker containers using a configuration received from MQTT. Create two clients written in Go, one for sending the configuration to MQTT and another for receiving the configuration and managing the docker containers. Compare the containers running currently with the configuration from MQTT and create/update/delete the containers accordingly. You are free to choose your own design requirements. keep it simple and be creative :)

Diagram

diagram

Steps

  • Make design requirements
  • Make event model (decide what should be communicated)
  • Create command client to send configuration to mqtt
  • Create docker manager client
    • Retrieve configurations
    • Manage docker containers
  • Create a cool feature not listed (Optional)

Starting up

Install Go from here
Install Docker from here.

Run the MQTT broker via docker-compose. You can connect to it via localhost and port: 1883 by default, no authentication is needed.

docker-compose up -d

To debug MQTT messages MQTT explorer is a nice tool to view messages in a GUI

Some useful docs

Questions

If you have any questions about the assignment or project setup feel free to contact us at [email protected]. You can also come by the office. We're always ready to help.

Good luck with the assignment!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published