Skip to content

My infrastructure as code using docker containers & compose

License

Notifications You must be signed in to change notification settings

ohadbenita/docker-config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

  • My infrastructure as code using Docker containers & docker-compose.
  • This repository's goal is to provide assistance and guidance into the configuration of different services around home automation using compose.

Configuration Sections

Admin

Here you can find services I use mainly for administering my infrastructure:

  1. Cloud9 - A compact web-based IDE I use daily to edit my different code and configurations.
  2. Prune - A container used to do dome maintenance around docker objects such as images, unused volumes, etc.
  3. Ouroboros - Auto-updater for docker containers.
  4. Portainer - Simple yet powerful web-based container manager.

Hass

Services used for my HomeAssistant, my home automation hub of choice.

  1. MariaDB - An open source relational database, used as the data store for home assistant's data.
  2. Mosquitto - An open source MQTT broker used as a pub-sub server for many of my devices.
  3. HomeAssistant - An open source home automation hub.
  4. MotionEye - A service to gather and control cctv cameras.

Media

All media-related services used to manage my media library.

  1. SickChill - Used to automatically download torrents and their metadata.
  2. Transmission - A simple bittorrent client.

Network

All services related to external access to the different services I run are listed here.

  1. NGINX - A powerful reverse proxy for securely exposing public services. This container also takes care of the renewal of the DuckDNS SSL certificate.
  2. DuckDNS - A free dynamic DNS hosted on AWS. Used to update my public IP address with my registered domain.

NextCloud

A dropbox-like service used to synchronize local files with mobile devices.

  1. MariaDB - An open source relational database, used as the data store for NextCloud's data.
  2. NextCloud - A file-synchronization and collaboration service.

Traccar

A service used to report location data locally without hosting it on any external service.

  1. MariaDB - An open source relational database, used as the data store for Traccar's data.
  2. Traccar - Traccar is the leading GPS tracking software. Vehicle and personal tracking. Self hosting and cloud-based solution. Real time view, reports, notifications.

Getting Started

  • In my setup, the configuration of all services reside under /volume1/Media/Config/name_of_service. This gives the advantage of keeping all configuration related to my docker infrastructure organized in one place which is easy to maintain and take backups.
  • To try out one of the services:
    • Create docker-compose.yaml and copy the relevant service's configuration.
    • Wherever I refer to ${ENV_VAR} - create an .env file in the same folder as your docker-compose.yaml with your own values for the environment variables.
  • Each of the services' configuration will be documented under their relevant sections:

About

My infrastructure as code using docker containers & compose

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published