From 12b206d164f15557dd019f12deddbeefe7940bde Mon Sep 17 00:00:00 2001 From: David Young Date: Wed, 9 Aug 2017 22:29:30 +1200 Subject: [PATCH] Huginn (#14) * Huginn recipe WIP * Add Huginn recipe --- manuscript/images/huginn.png | Bin 0 -> 93938 bytes manuscript/recipies/huginn.md | 117 +++++++++++++++++++++++++++++ manuscript/recipies/template.md | 107 ++++++++++++++++++++++++++ manuscript/recipies/wekan.md | 3 + manuscript/reference/git-docker.md | 18 ++++- manuscript/reference/networks.md | 1 + mkdocs.yml | 28 ++----- 7 files changed, 249 insertions(+), 25 deletions(-) create mode 100644 manuscript/images/huginn.png create mode 100644 manuscript/recipies/huginn.md create mode 100644 manuscript/recipies/template.md diff --git a/manuscript/images/huginn.png b/manuscript/images/huginn.png new file mode 100644 index 0000000000000000000000000000000000000000..efd313b04f37a6ce8cf03936e77e8332dcdc3301 GIT binary patch literal 93938 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 literal 0 HcmV?d00001 diff --git a/manuscript/recipies/huginn.md b/manuscript/recipies/huginn.md new file mode 100644 index 0000000..2e69505 --- /dev/null +++ b/manuscript/recipies/huginn.md @@ -0,0 +1,117 @@ +# Huginn + +Huginn is a system for building agents that perform automated tasks for you online. They can read the web, watch for events, and take actions on your behalf. Huginn's Agents create and consume events, propagating them along a directed graph. Think of it as a hackable version of IFTTT or Zapier on your own server. + + + +## Ingredients + +1. [Docker swarm cluster](/ha-docker-swarm/) with [persistent shared storage](/ha-docker-swarm/shared-storage-ceph.md) +2. [Traefik](/ha-docker-swarm/traefik) configured per design + +## Preparation + +### Setup data locations + +Create the location for the bind-mount of the database, so that it's persistent: + +``` +mkdir -p /var/data/huginn/database +``` + +### Create email address + +Strictly speaking, you don't **have** to integrate Huginn with email. However, since we created our own mailserver stack earlier, it's worth using it to enable emails within Huginn. + +``` +cd /var/data/docker-mailserver/ +./setup.sh email add huginn@huginn.example.com my-password-here +# Setup MX and DKIM if they don't already exist: +./setup.sh config dkim +cat config/opendkim/keys/huginn.example.com/mail.txt +``` + +### Prepare environment + +Create /var/data/huginn/huginn.env, and populate with the following variables. Set the "INVITATION_CODE" variable if you want to require users to enter a code to sign up (protects the UI from abuse) (The full list of Huginn environment variables is available [here](https://github.com/huginn/huginn/blob/master/.env.example)) + +``` +# For huginn/huginn - essential +SMTP_DOMAIN=your-domain-here.com +SMTP_USER_NAME=you@gmail.com +SMTP_PASSWORD=somepassword +SMTP_SERVER=your-mailserver-here.com +SMTP_PORT=587 +SMTP_AUTHENTICATION=plain +SMTP_ENABLE_STARTTLS_AUTO=true +INVITATION_CODE= +POSTGRES_PORT_5432_TCP_ADDR=db +POSTGRES_PORT_5432_TCP_PORT=5432 +DATABASE_USERNAME=huginn +DATABASE_PASSWORD= +DATABASE_ADAPTER=postgresql + +# Optional extras for huginn/huginn, customize or append based on .env.example lined above +TWITTER_OAUTH_KEY= +TWITTER_OAUTH_SECRET= + +# For postgres/postgres +POSTGRES_USER=huginn +POSTGRES_PASSWORD= +``` + +### Setup Docker Swarm + +Create a docker swarm config file in docker-compose syntax (v3), something like this: + +``` +version: '3' + +services: + + huginn: + image: huginn/huginn + env_file: /var/data/huginn/huginn.env + networks: + - internal + - traefik + deploy: + labels: + - traefik.frontend.rule=Host:huginn.example.com + - traefik.docker.network=traefik + - traefik.port=3000 + + db: + env_file: /var/data/huginn/huginn.env + image: postgres:latest + volumes: + - /var/data/huginn/database:/var/lib/postgresql/data + networks: + - internal + +networks: + traefik: + external: true + internal: + driver: overlay + ipam: + config: + - subnet: 172.16.6.0/24 +``` + +!!! tip + Setup unique static subnets for every stack you deploy. This avoids IP/gateway conflicts which can otherwise occur when you're creating/removing stacks a lot. See [my list](/reference/networks/) here. + + + +## Serving + +### Launch Huginn stack + +Launch the Huginn stack by running ```docker stack deploy huginn -c ``` + +Log into your new instance at https://**YOUR-FQDN**. You'll need to use the "Sign Up" button, and (optionally) enter your invitation code in order to create your account. + +## Chef's Notes + +1. I initially considered putting an oauth proxy in front of Huginn, but since the invitation code logic prevents untrusted access, and since using a proxy would break oauth for sevices like Twitter integration, I left it out. diff --git a/manuscript/recipies/template.md b/manuscript/recipies/template.md new file mode 100644 index 0000000..3c62c7a --- /dev/null +++ b/manuscript/recipies/template.md @@ -0,0 +1,107 @@ +# NAME + +Intro + +![NAME Screenshot](../images/name.jpg) + +Details + +## Ingredients + +1. [Docker swarm cluster](/ha-docker-swarm/) with [persistent shared storage](/ha-docker-swarm/shared-storage-ceph.md) +2. [Traefik](/ha-docker-swarm/traefik) configured per design + +## Preparation + +### Setup data locations + +We'll need several directories to bind-mount into our container, so create them in /var/data/wekan: + +``` +mkdir /var/data/wekan +cd /var/data/wekan +mkdir -p {wekan-db,wekan-db-dump} +``` + +### Prepare environment + +Create wekan.env, and populate with the following variables +``` +OAUTH2_PROXY_CLIENT_ID= +OAUTH2_PROXY_CLIENT_SECRET= +OAUTH2_PROXY_COOKIE_SECRET= +MONGO_URL=mongodb://wekandb:27017/wekan +ROOT_URL=https://wekan.example.com +MAIL_URL=smtp://wekan@wekan.example.com:password@mail.example.com:587/ +MAIL_FROM="Wekan " +``` + +### Setup Docker Swarm + +Create a docker swarm config file in docker-compose syntax (v3), something like this: + +``` +version: '3' + +services: + + wekandb: + image: mongo:3.2.15 + command: mongod --smallfiles --oplogSize 128 + networks: + - internal + volumes: + - /var/data/wekan/wekan-db:/data/db + - /var/data/wekan/wekan-db-dump:/dump + + proxy: + image: zappi/oauth2_proxy + env_file: /var/data/wekan/wekan.env + networks: + - traefik + - internal + deploy: + labels: + - traefik.frontend.rule=Host:wekan.example.com + - traefik.docker.network=traefik + - traefik.port=4180 + command: | + -cookie-secure=false + -upstream=http://wekan:80 + -redirect-url=https://wekan.example.com + -http-address=http://0.0.0.0:4180 + -email-domain=example.com + -provider=github + + wekan: + image: wekanteam/wekan:latest + networks: + - internal + env_file: /var/data/wekan/wekan.env + +networks: + traefik: + external: true + internal: + driver: overlay + ipam: + config: + - subnet: 172.16.3.0/24 +``` + +!!! tip + Setup unique static subnets for every stack you deploy. This avoids IP/gateway conflicts which can otherwise occur when you're creating/removing stacks a lot. See [my list](/reference/networks/) here. + + + +## Serving + +### Launch Wekan stack + +Launch the Wekan stack by running ```docker stack deploy wekan -c ``` + +Log into your new instance at https://**YOUR-FQDN**, with user "root" and the password you specified in gitlab.env. + +## Chef's Notes + +1. If you wanted to expose the Wekan UI directly, you could remove the oauth2_proxy from the design, and move the traefik-related labels directly to the wekan container. You'd also need to add the traefik network to the wekan container. diff --git a/manuscript/recipies/wekan.md b/manuscript/recipies/wekan.md index b8c2410..7da9ca5 100644 --- a/manuscript/recipies/wekan.md +++ b/manuscript/recipies/wekan.md @@ -68,6 +68,8 @@ services: networks: - traefik - internal + volumes: + - /var/data/oauth_proxy/authenticated-emails.txt:/authenticated-emails.txt deploy: labels: - traefik.frontend.rule=Host:wekan.example.com @@ -80,6 +82,7 @@ services: -http-address=http://0.0.0.0:4180 -email-domain=example.com -provider=github + -authenticated-emails-file=/authenticated-emails.txt wekan: image: wekanteam/wekan:latest diff --git a/manuscript/reference/git-docker.md b/manuscript/reference/git-docker.md index 0ecc8e1..7b71d03 100644 --- a/manuscript/reference/git-docker.md +++ b/manuscript/reference/git-docker.md @@ -2,7 +2,20 @@ Our HA platform design relies on Atomic OS, which only contains bare minimum elements to run containers. -So how can we use git on this system, to push/pull the changes we make to config files? +So how can we use git on this system, to push/pull the changes we make to config files? With a container, of course! + +## git-docker + +I [made a simple container](https://github.com/funkypenguin/git-docker/blob/master/Dockerfile) which just basically executes git in the CWD: + +To use it transparently, add an alias for the "git" command: + +``` +alias git='docker run -v $PWD:/var/data -v \ +/var/data/git-docker/data:/root funkypenguin/git-docker git' +``` + +## Limitations docker run -v /var/data/git-docker/data:/root funkypenguin/git-docker ssh-keygen -t ed25519 -f /root/.ssh/id_ed25519 Generating public/private ed25519 key pair. @@ -24,6 +37,3 @@ The key's randomart image is: |...=OX+.+. | +----[SHA256]-----+ [root@ds3 data]# - - -alias git='docker run -v $PWD:/var/data -v /var/data/git-docker/data:/root funkypenguin/git-docker git' diff --git a/manuscript/reference/networks.md b/manuscript/reference/networks.md index 90f493f..def0562 100644 --- a/manuscript/reference/networks.md +++ b/manuscript/reference/networks.md @@ -10,3 +10,4 @@ Network | Range [Wekan](https://geek-cookbook.funkypenguin.co.nz/recipies/wekan/) | 172.16.3.0/24 [Piwik](https://geek-cookbook.funkypenguin.co.nz/recipies/piwki/) | 172.16.4.0/24 [Tiny Tiny RSS](https://geek-cookbook.funkypenguin.co.nz/recipies/tiny-tiny-rss/) | 172.16.5.0/24 +[Huginn](https://geek-cookbook.funkypenguin.co.nz/recipies/huginn/) | 172.16.6.0/24 diff --git a/mkdocs.yml b/mkdocs.yml index d6a3ef5..787ad07 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,9 +1,12 @@ -site_name: Funky Penguin's Geek's Cookbook +site_name: Funky Penguin's Geek Cookbook site_description: 'A short description of my project' site_author: 'David Young' -site_url: 'https://geeks-cookbook.funkypenguin.co.nz' +site_url: 'https://geek-cookbook.funkypenguin.co.nz' edit_uri: 'edit/master/manuscript/' +# Fail to build if we have broken links +strict: true + # Repository repo_name: 'funkypenguin/geek-cookbook' repo_url: 'https://github.com/funkypenguin/geek-cookbook' @@ -37,28 +40,11 @@ pages: - Wekan: recipies/wekan.md - Piwik: recipies/piwik.md - Tiny Tiny RSS: recipies/tiny-tiny-rss.md + - Huginn: recipies/huginn.md - Reference: - OAuth Proxy: reference/oauth_proxy.md - Networks: reference/networks.md -# - Basic: advanced/tiny-tiny-rss.md -# - Plugins: advanced/tiny-tiny-rss.md -# - Themes: advanced/tiny-tiny-rss.md - -# - Home Assistant: -# - About: advanced/home-assistant/basic.md -# - Basic: advanced/home-assistant/basic.md -# - Grafana: advanced/home-assistant/grafana.md -# - Limitless LED: advanced/home-assistant/limitless-led.md -# - OwnTracks: advanced/home-assistant/limitless-led.md - -# - Home Assistant: - -# - About: advanced/home-assistant/basic.md -# - Basic: advanced/home-assistant/basic.md -# - Grafana: advanced/home-assistant/grafana.md -# - Limitless LED: advanced/home-assistant/limitless-led.md -# - OwnTracks: advanced/home-assistant/limitless-led.md - +# - git-docker: reference/git-docker.md # - Huginn: advanced/huginn.md # - Nextcloud: advanced/nextcloud.md # - OwnTracks: advanced/owntracks.md