All Projects → dunklesToast → Dockerkit

dunklesToast / Dockerkit

Licence: mit
Control your Docker Containers with HomeKit

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Dockerkit

Docker Influxdb Grafana
A Docker container which runs InfluxDB and Grafana ready for persisting data
Stars: ✭ 130 (+80.56%)
Mutual labels:  hacktoberfest, docker-container
Docker Pi Hole
Pi-hole in a docker container
Stars: ✭ 4,288 (+5855.56%)
Mutual labels:  hacktoberfest, docker-container
Ha Dockermon
A NodeJS RESTful API which can be used with Home Assistant to report the state of Docker Containers
Stars: ✭ 171 (+137.5%)
Mutual labels:  hacktoberfest, docker-container
Passwordpusher
🔐 PasswordPusher is an application to securely communicate passwords over the web. Passwords automatically expire after a certain number of views and/or time has passed.
Stars: ✭ 484 (+572.22%)
Mutual labels:  hacktoberfest, docker-container
Portainer
Making Docker and Kubernetes management easy.
Stars: ✭ 20,434 (+28280.56%)
Mutual labels:  hacktoberfest, docker-container
Openjdk Build
AdoptOpenJDK community OpenJDK build scripts - common across all releases/versions
Stars: ✭ 764 (+961.11%)
Mutual labels:  hacktoberfest, docker-container
Ember Styleguide
This is a UI addon that intends to help standardize the Ember family of websites and make it easier to make the Ember website an Ember app.
Stars: ✭ 69 (-4.17%)
Mutual labels:  hacktoberfest
Chef Splunk
Development repository for the chef-splunk cookbook
Stars: ✭ 70 (-2.78%)
Mutual labels:  hacktoberfest
Kafka Elasticsearch Injector
Golang app to read records from a set of kafka topics and write them to an elasticsearch cluster
Stars: ✭ 70 (-2.78%)
Mutual labels:  hacktoberfest
Zola Theme Terminimal
A simple, minimal retro theme for Zola
Stars: ✭ 70 (-2.78%)
Mutual labels:  hacktoberfest
Hacktoberfest2020
Contribute for hacktoberfest 2020
Stars: ✭ 72 (+0%)
Mutual labels:  hacktoberfest
Laravel Disqus
A simple Disqus platform integration with Laravel.
Stars: ✭ 71 (-1.39%)
Mutual labels:  hacktoberfest
Chaos
🔥 CHAOS is a Remote Administration Tool that allow generate binaries to control remote operating systems.
Stars: ✭ 1,168 (+1522.22%)
Mutual labels:  hacktoberfest
Flask weather
☀️ ☔️ Flask app to auto-detect local weather based off of user's IP address.
Stars: ✭ 70 (-2.78%)
Mutual labels:  hacktoberfest
Hacktoberfest 2020 Fizzbuzz
🎃 Submit creative/abstract FizzBuzz solutions in any language you want!
Stars: ✭ 71 (-1.39%)
Mutual labels:  hacktoberfest
Rosetta project
Algorithms implemented in Python, JS and Go. Feel free to add another language!
Stars: ✭ 70 (-2.78%)
Mutual labels:  hacktoberfest
Made In India
🇮🇳 A list of neat projects made in India.
Stars: ✭ 70 (-2.78%)
Mutual labels:  hacktoberfest
Mmctl
A remote CLI tool for Mattermost
Stars: ✭ 70 (-2.78%)
Mutual labels:  hacktoberfest
Gleebug
Debugging Framework for Windows.
Stars: ✭ 1,168 (+1522.22%)
Mutual labels:  hacktoberfest
Wassm
Web framework for x86_64 nasm
Stars: ✭ 71 (-1.39%)
Mutual labels:  hacktoberfest

DockerKit

Control your Docker Containers with HomeKit.

Requirements

  • NodeJS & npm / yarn

Use with Docker

You can now pull this image from Docker Hub and run it via Docker. Make sure to set net=host. Otherwise the devices won't be announced correctly.

Configuration

A very basic configuration is located in the config.example.json in the Repositories root-directory.

{
  "dockerode": {
    <configuration for docker connector. head over to https://www.npmjs.com/package/dockerode for more info. If empty it uses the /var/run/docker.sock>
  },
  "containerNames": [
    <add some container names here and only them will be published as a homekit device. if this is empty, every container will be publishes>
  ],
  "bridge": {
    "deviceName": "The HomeKit Bridge Name. You can use $hostname as a variable for the device's hostname. This does not work everytime. If you can't find the bridge use a normal name like Docker",
    "mac": "Some MAC Address for the Bridge. If you have multiple DockerKit Instances, they need different MACs",
    "port": 50045,
    "pincode": "Setup PinCode. XXX-XX-XXX, numbers only"
  }
}

Installation

  1. Clone this repo git clone https://github.com/dunklesToast/DockerKit.git
  2. Go into it cd DockerKit
  3. Install Dependencies npm install or yarn
  4. Move the config.example.json to config.json
  5. Start the Service node src/DockerKit

Then go into the HomeKit App on your mobile Device (Mac does not work for pairing) and add a new Accessory. The default Setup Code is 123-45-678

Docker

  • Mount your own config file over /app/config.json (-v ./config.json:/app/config.json)
  • The Docker container must be in host networking mode in order to added as an accessory
  • The Docker socket needs to be exposed via TCP socket or volume mounted (-v /var/run/docker.sock:/var/run/docker.sock).

Host networking will not work in Windows or OSX due to docker running in a VM on those platforms.

An example docker-compose file is included.

Todo:

  • Fix 304 on first update
  • Enable a mode where every container is controllable
  • Create and publish Docker Container for this module
  • Create a dimmable Light for Docker Swarm (idea by u/DuffMaaaann)
  • Basic Server statistics (idea by u/DuffMaaaann)
  • Fix issue with hostnames as Bridge Name

Any cool ideas for this project?

Create an Issue or Pull Request ^^

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].