<  February 2017   >
Su Mo Tu We Th Fr Sa  
          1  2  3  4  
 5  6  7  8  9 10 11  
12 13 14 15 16 17 18  
19 20 21 22 23 24 25  
26 27 28
00:00 <ec> CoreOS solves that, in very cool ways, for big stuff; but for small stuff, it's the same as it's always been: type the damn port in an environment variable or something.
00:00 <pikajude> ok
00:00 <ec> (etcd being the ‘correct way’ to do that, though)
00:00 <ec> (and then containerizing your local code *too*, alongside the postgres, so that they both self-configure via etcd)
00:00 <ec> but tooootally not worth the effort.
00:00 <pikajude> containerizing the local code too
00:00 <ec> anyway, what you're saving here by using a container *isn't* the “i have to manually type a port-number”,
00:00 <pikajude> so do i have to compile inside the vm
00:01 <ec> it's “I didn't just install some Postgres system on my machine that I'm going to forget about, that's going to get out-of-date, that might expose security vulnerabilities, that I'll have to configure and shit ...”
00:01 <ec> if it's in a container, you forget about it and throw it away when you're done — and create a new one next time, 8mos down the road, that you pick this local project back up and touch it again.
00:01 <pikajude> well i can just disable postgres by commenting it out in my configuration.nix
00:10 <pikajude> ec: but seriously though, do you have to build inside the container for that
00:11 <pikajude> or does the loop become edit -> build -> create container -> run container
00:11 <ec> oh, you can easily set up a container to be accessible and shit — you *definitely* don't build inside the container, tho
00:11 <ec> a container with a full fucking compilation toolchain isn't really a *container* anymore, tbh
00:12 <ec> one of the hallmarks of a good containerized program is that it's just running like, ≤3 processes
00:12 <pikajude> ya
00:12 <pikajude> a good container would be running <2 processes
00:12 <ec> often, if your process can act as the UNIX reaper-process, exactly one process.
00:12 <pikajude> i see
00:12 <ec> but usually at least init+syslogd+app
00:12 <ec> anything else you're running *inside* the container is a good candidate to run in a *new* container :P
00:12 <pikajude> so the process is build, then create a new container with those contents, then run
00:12 <pikajude> that make cents
00:12 <ec> but — nah, there's no reason you can't just create a Bad Development Container
00:13 <pikajude> would you use a local kubernetes for that?
00:13 <ec> oh god i've never touched kubernetes yet
00:13 <ec> my containerization knowledge is mostly theory rn
00:13 <pikajude> oh ok
00:13 <ec> but: cross-compile on the host, and have a sync'd / shared filesystem with the container
00:13 <pikajude> so the actual mechanism is a mystery still
00:13 <ec> so that the code is just *running* inside the container
00:13 <pikajude> that probably works
00:13 <ec> you writing on a linux?
00:13 <pikajude> although you would want to set up all the orchestration
00:13 <pikajude> using docker-compose or kube
00:13 <pikajude> yes
00:14 <ec> possibly — depends how complex your Thingamabob is
00:14 <ec> since I work on OS X, I do a lot of my containerization-related work in a pair of VMs
00:14 <pikajude> groce
00:14 <ec> hence Vagrant as the high-level orchestration tool
00:14 <pikajude> here on linux, i can just build docker images using nix
00:14 <ec> one VM is an Arch I'm actually SSHing into, building stuff on, sharing code and filesystem with my Mac — basically my VM'd Super Tmux™;
00:14 <ec> with a CoreOS VM hosting services.
00:15 <pikajude> but in ""production"" this whole setup would have an nginx, a postgres, and an app running
00:15 <pikajude> and i don't wanna do all that manually
00:15 <ec> next time I work on containerized shit though, that's likely to change, because I dug up an ancient Mac Pro that I'm going to dedicate as the household container-host
00:15 <jfhbrook> make devops do it
00:15 <pikajude> because they have tools that can create these things for you
00:15 <pikajude> but devops is me jfhbrook
00:15 <ec> so, Vagrant can orchestrate Docker
00:15 <ec> which sounds very evil
00:15 <ec> but
00:15 <ec> https://www.vagrantup.com/docs/provisioning/docker.html
00:15 <pikajude> well, ~nothing~ can't orchestrate docker
00:16 <pikajude> I think docker-compose is maybe the easier choice
00:16 <pikajude> or it isn't
00:16 <ec> hmmmm
00:16 <pikajude> I forget
00:16 <ec> on a Linux, maybeprobably
00:16 <pikajude> have done kube stuff for work already
00:16 <pikajude> kube is also easy
00:16 <ec> but on OS X all of the docker-native tools are pretty terrible; and it's generally a better idea to use other's tools
00:16 <pikajude> plus, scaling
00:16 <pikajude> you can scale stuff on kubernetes
00:16 <pikajude> it's great
00:16 <pikajude> "ok, now i want 3 replicas"
00:16 <ec> https://coreos.com/tectonic/
00:16 <ec> maybe relevant? idk?
00:17 <pikajude> free for up to 10 nodes
00:17 <pikajude> ewwww
00:17 <ec> wait
00:17 <ec> https://coreos.com/kubernetes/docs/latest/
00:17 <ec> I saw ‘Kubernetes’ and clicked it, but it was the wrong thing.
00:17 <ec> ‘Pods’ that
00:17 <pikajude> pavlov's kubernetes
00:17 <ec> is so cute
00:17 <jfhbrook> coreos uses k8s now?
00:17 <ec> _any_custodian: (f)->
00:17 <ec> _.any @custodians.direct, f or
00:17 <ec> _.any @custodians.inherited, f
00:17 <jfhbrook> they certainly didn't invent it
00:17 <pikajude> I ultra forget how kubernetes manages containers discovering each other though
00:18 <pikajude> nginx needs to know what port app is listening on
00:18 <ec> jfhbrook: it's tightly integrated
00:18 <pikajude> app needs to know what port postgres is running on
00:18 <pikajude> although with kube you don't need nginx since it has loadbalancer already
00:18 <jfhbrook> 2 years ago there was no k8s in there at all
00:18 <ec> er
00:18 <ec> you have it backwards, jfhbrook
00:19 <ec> kubernetes has always used CoreOS's etcd
00:19 <pikajude> oo
00:19 <ec> CoreOS is just … etcd plus container-host-management, with a super-pared-down-linux to run on those container-hosts' metal-or-virtualization-platform
00:19 <pikajude> ok so docker-compose manages discovery via DNS
00:19 <pikajude> i think kube has multiple ways to do it
00:20 <pikajude> but i'm too dumb to understand what they are
00:20 <pikajude> anyone else work really well given examples but are just shit at reading docs without it
00:20 <pikajude> i can't brain this
00:20 <ec> other way around for me
00:20 <ec> I get bogged down in tutorials b/cuz they never *precisely* match what I want, and I can't map the changes I need to make onto the tutorial
00:20 <pikajude> dingus
00:21 <ec> so I'm usually just like “point me at the fucking docs.” for anything I wanna do
00:21 <pikajude> the fucking docs?
00:21 <pikajude> you mean the kama sutra?
00:21 <ec> “ Kubernetes uses etcd to store configuration data that can be used by each of the nodes in the cluster. This can be used for service discovery and represents the state of the cluster that each component can reference to configure or reconfigure themselves. By providing a simple HTTP/JSON API, the interface for setting or retrieving values is very straight
00:21 <ec> forward.”
00:22 <pikajude> so etcd is a REST interface for a key/value store?
00:22 <ec> yep
00:22 <pikajude> revolutionary
00:22 <ec> *distributed* key/value store, focused on configuration,
00:22 <ec> and with some self-configuration magic I don't understand
00:22 <pikajude> all this shit is magic
00:22 <ec> I don't ... recall ... specifically, but somehow, etcd can tell containers how to find it when they don't already know where it is???
00:22 <ec> or. something. I don't remember. )=
00:22 <pikajude> rip
00:23 <ec> but I remember being like “whaaaaaat the aaaactual fuck”
00:24 <pikajude> so like
00:24 <pikajude> i have my services set up using nixos declarative config already
00:24 <pikajude> what do i stand to gain from kubernetesizing it all
00:24 <pikajude> would it be easier
00:24 <pikajude> or harder
00:24 <ec> I kinda want a borzoi
00:25 <pikajude> well that's your fault
00:25 <ec> I'm torn between the Borzoi and a Groenendael
00:26 <ec> my sister wants me to take this 6-yo ex-stud toy-aussie
00:26 <ec> hers is quite literally *unbelievably* cute, but like,
00:26 <ec> idk how smart that breed is; I like super-intelligent, self-directed, shepherd-style dogs
00:27 <jfhbrook> shepherds are great
00:28 <jfhbrook> though they take a lot of space and effort
00:33 <ec> I've always had shetlands — very lazy shepherds
00:33 <ec> and not all shepherds are super-active; again, hence Gronendael, they're more family-style / house-calm sub-breed of the Teuveurens
00:33 <jfhbrook> always german shepherds for us growing up
00:39 <jfhbrook> man barzois look funny
00:39 <jfhbrook> borzois
00:39 <ec> hehehe yeah the all-white ones are kinda dorky
00:39 <ec> I like the tricolour ones a lot tho
00:39 <ec> groenendaels look like goddamn spooky German ghosts, I love it
00:53 <ec> seriously doesn't this dog look like it's gonna come fuck ur shit up in the dead of night
00:53 <ec> https://twitter.com/ELLIOTTCABLE/status/833475756307120129/photo/1
00:56 <ec> wuest
00:56 <ec> wait
00:58 <ec> well if we gain a west, somebody say hi for me
00:58 <ec> i'm off to watch voyager
03:16 meowrobot_ joined
04:39 madgoat joined
04:39 madgoat left
05:56 <ja> cool dog, ec
05:56 <ja> or dogssss, rather
07:09 pelegreno joined
11:08 cloudhead joined
11:25 mylesborins joined
14:51 cloudhead joined
17:07 glowcoil_ joined
17:09 prophile joined
17:21 yorick_ joined
21:15 <ja> yo, yorick_
21:15 <yorick_> hi
21:15 <yorick_> wait why am I underscored
21:15 <yorick> hi ja
21:16 <ja> greetings
21:40 <jfhbrook> ec: http://www.scp-wiki.net/ if you haven't found it
21:41 <pikajude> love that wiki
21:41 <pikajude> great resource for how to use secure copy
21:44 <pikajude> ugh why are we even using slack if nobody responds
23:01 <jfhbrook> lolol
23:01 <jfhbrook> is slack a new development at your office?
23:08 <pikajude> no
23:08 <pikajude> it's a year old