Fork me on GitHub
#docker
<
2020-11-20
>
hipster coder17:11:31

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

hipster coder17:11:53

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

hipster coder17:11:45

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

hipster coder17:11:59

you can rsync volumes, remotely, across the wire

tvaughan17:11:27

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

tvaughan17:11:23

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

hipster coder17:11:54

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

tvaughan17:11:11

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 coder17:11:25

yes, you can do that quite easily

hipster coder17:11:31

it will mirror it for you, in real time

hipster coder17:11:03

rsync uses SSH protocal

hipster coder17:11:09

I found it really fast actually

tvaughan17:11:49

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

tvaughan17:11:24

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

hipster coder17:11:32

I guess that leads me to this question though

hipster coder17:11:45

are you storing PostGres on the same docker containers?

hipster coder17:11:59

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

hipster coder17:11:04

with the volumes

hipster coder17:11:22

or… are you connecting up to a PostGre cluster?

tvaughan17:11:39

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 coder17:11:57

I would only put everything together, for local dev

hipster coder17:11:00

to make it easier

hipster coder17:11:11

well, I mean 1 config, but different images

hipster coder17:11:23

docker-compose

hipster coder17:11:50

I never meet a DevOps Clojurian before… super cool

tvaughan17:11:38

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 coder17:11:00

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

hipster coder17:11:05

I had to debug the crap out of it

hipster coder17:11:12

across Linux, OSX and Win

hipster coder17:11:52

I am getting ready to dive into Kubernetes

hipster coder17:11:42

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

tvaughan18:11:11

Yes, development and production should match as much as possible

hipster coder18:11:25

yes. because it limits the edge cases, for problems

hipster coder18:11:24

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

hipster coder18:11:28

lmao hahahahaa

tvaughan18:11:41

Fedora Silverblue! 🙂

hipster coder18:11:56

ahhh, you are Red Hat, centOS?

hipster coder18:11:33

you must be doing more enterprise, or security sensitive work

hipster coder18:11:47

I have not used Red Hat since the banks

tvaughan18:11:47

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

hipster coder18:11:17

immutable OS? hmmm. enlighten me, Red Hat Master

tvaughan18:11:22

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

hipster coder18:11:59

• BTRFS as the default file system

hipster coder18:11:10

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

hipster coder18:11:19

so, you can revert the system back?

hipster coder18:11:45

I am going to look into this, news to me

hipster coder18:11:04

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.

👌 3
hipster coder18:11:41

Ok, I am sold… Installing now

hipster coder18:11:57

especially with Python V2 to V3

hipster coder18:11:13

I foo bared the Python install before

hipster coder18:11:31

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

😊 3
tvaughan18:11:43

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

hipster coder18:11:02

this is awesome

hipster coder18:11:22

omg, so awesome

hipster coder18:11:38

you use linkedin?

hipster coder18:11:55

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