docker

hipster coder 2020-11-20T17:47:31.006300Z

@tvaughan I am into a lot of DevOps… so I am really interested in your ideas

hipster coder 2020-11-20T17:47:53.006700Z

would have a registry/repo for your docker volumes, solve some big problem for you?

hipster coder 2020-11-20T17:48:45.007900Z

you know what you could do? use rsync to a remote drive

hipster coder 2020-11-20T17:48:59.008400Z

you can rsync volumes, remotely, across the wire

tvaughan 2020-11-20T17:50:27.010200Z

When you run a docker image, any data that is created is lost when the container stops. For example, if you had postgres running in a container, everything that you saved to postgres would be lost when the container stops. A volume is a way to persist data. For example, you would say "mount this volume inside the postgres container at /var/lib/postres." This is how you persist data using containers

tvaughan 2020-11-20T17:51:23.011500Z

Currently I know of no good way to backup a volume, other that copying the files to somewhere like a barbarian

hipster coder 2020-11-20T17:51:34.011700Z

rsync

hipster coder 2020-11-20T17:51:54.012400Z

I actually had to use rsync on docker for a while… because the native docker sync was not working

tvaughan 2020-11-20T17:52:11.012800Z

Yes, I know. I would like to just push a snapshot of the volume somewhere, just as easily as I can with docker images

hipster coder 2020-11-20T17:52:25.013100Z

yes, you can do that quite easily

hipster coder 2020-11-20T17:52:31.013300Z

it will mirror it for you, in real time

hipster coder 2020-11-20T17:53:03.013800Z

rsync uses SSH protocal

hipster coder 2020-11-20T17:53:09.014100Z

I found it really fast actually

tvaughan 2020-11-20T17:53:49.015Z

I use rsync a lot. It's a great tool

tvaughan 2020-11-20T17:54:24.015700Z

rsync uses rsh by default I think. You have to tell rsync to use ssh, like rsync --rsh=ssh

hipster coder 2020-11-20T17:54:32.015900Z

I guess that leads me to this question though

hipster coder 2020-11-20T17:54:45.016200Z

are you storing PostGres on the same docker containers?

hipster coder 2020-11-20T17:54:59.016700Z

are you putting several pieces of your stack into 1 container?

hipster coder 2020-11-20T17:55:04.016900Z

with the volumes

hipster coder 2020-11-20T17:55:22.017700Z

or… are you connecting up to a PostGre cluster?

hipster coder 2020-11-20T17:55:24.017900Z

on AWS

tvaughan 2020-11-20T17:55:39.018300Z

Each container should be one and only one service. Possibly multiple ports, but I don't like the idea of running more than one service in a container

hipster coder 2020-11-20T17:55:48.018500Z

agreed

hipster coder 2020-11-20T17:55:57.018800Z

I would only put everything together, for local dev

hipster coder 2020-11-20T17:56:00.019Z

to make it easier

hipster coder 2020-11-20T17:56:11.019300Z

well, I mean 1 config, but different images

hipster coder 2020-11-20T17:56:23.019600Z

docker-compose

hipster coder 2020-11-20T17:56:50.020Z

I never meet a DevOps Clojurian before… super cool

tvaughan 2020-11-20T17:57:38.020800Z

I don't use docker-compose. I think docker is a terrible service manager. I just use a makefile and run each container in a separate tmux pane

hipster coder 2020-11-20T17:58:00.021100Z

yea, you know… I had a ton of problems with docker-compose

hipster coder 2020-11-20T17:58:05.021300Z

I had to debug the crap out of it

hipster coder 2020-11-20T17:58:12.021600Z

across Linux, OSX and Win

hipster coder 2020-11-20T17:58:52.022Z

I am getting ready to dive into Kubernetes

hipster coder 2020-11-20T17:59:42.023100Z

because I want to mirror my local dev, to staging, to production… we call this “representational development” meaning… you build on what the production server is

tvaughan 2020-11-20T18:00:11.023700Z

Yes, development and production should match as much as possible

hipster coder 2020-11-20T18:00:25.024Z

yes. because it limits the edge cases, for problems

hipster coder 2020-11-20T18:01:24.025Z

hahahaha. ok. I am going to go.. talk the entire team into using Ubuntu

hipster coder 2020-11-20T18:01:28.025200Z

lmao hahahahaa

tvaughan 2020-11-20T18:01:41.025500Z

Fedora Silverblue! 🙂

hipster coder 2020-11-20T18:01:45.025700Z

😂

hipster coder 2020-11-20T18:01:56.026Z

ahhh, you are Red Hat, centOS?

hipster coder 2020-11-20T18:02:33.026900Z

you must be doing more enterprise, or security sensitive work

hipster coder 2020-11-20T18:02:47.027400Z

I have not used Red Hat since the banks

tvaughan 2020-11-20T18:02:47.027500Z

No, but Silverblue is an immutable OS. I'm partial to the concept

hipster coder 2020-11-20T18:03:00.027700Z

a what? woah

hipster coder 2020-11-20T18:03:17.028500Z

immutable OS? hmmm. enlighten me, Red Hat Master

tvaughan 2020-11-20T18:03:22.028600Z

Kinda like CoreOS was, if you're familiar with that

hipster coder 2020-11-20T18:03:59.028800Z

• BTRFS as the default file system

hipster coder 2020-11-20T18:05:10.029400Z

which means that you don’t upgrade packages: you just create a new version of the operating system with the new packages

hipster coder 2020-11-20T18:05:19.029700Z

so, you can revert the system back?

hipster coder 2020-11-20T18:05:45.030300Z

I am going to look into this, news to me

hipster coder 2020-11-20T18:06:04.030900Z

Once you’ve taken new versions of packages, you just reboot into the new version, and you’re good to go. If there’s a problem with it, you can revert to the old version. I like this for stability, but also for security.

👌 1
hipster coder 2020-11-20T18:06:07.031200Z

OMG Wow

tvaughan 2020-11-20T18:06:31.031800Z

Right

hipster coder 2020-11-20T18:06:41.032Z

Ok, I am sold… Installing now

hipster coder 2020-11-20T18:06:45.032300Z

forget VMWare

tvaughan 2020-11-20T18:06:48.032400Z

🙂

hipster coder 2020-11-20T18:06:57.032600Z

especially with Python V2 to V3

hipster coder 2020-11-20T18:07:13.033Z

I foo bared the Python install before

hipster coder 2020-11-20T18:07:31.033500Z

ok, take a break… this was the most fascinating conversation the entire week

😊 1
tvaughan 2020-11-20T18:07:43.033800Z

Yeah, so don't install python onto the os. Use a toolbox https://docs.fedoraproject.org/en-US/fedora-silverblue/toolbox/

hipster coder 2020-11-20T18:08:02.034Z

this is awesome

hipster coder 2020-11-20T18:08:22.034400Z

omg, so awesome

hipster coder 2020-11-20T18:08:38.034800Z

you use linkedin?

hipster coder 2020-11-20T18:08:55.035400Z

I might need to call on you, for some high profile jobs… DevOps always seems to be difficult to find help

tvaughan 2020-11-20T18:09:53.035800Z

DM'd