P
P
Pavel Bezrukov2015-02-02 16:29:18
Virtualization
Pavel Bezrukov, 2015-02-02 16:29:18

Docker, lxc and porridge in the head or what is the best way to cook them?

Good afternoon.

I pursue 2 goals, to study new interesting technologies and organize a development team.
What I have: a dedicated server and root access. What I want to get is a develov machine and 3 nodes for developers.
For implementation, I want to use container virtualization based on lxc.

All weekend I studied docker and read a little about setting up lxc, and I got some mess in my head from all this, if anyone is interested in this topic, please help me figure it out.

Firstly, apparently the correct approach for raising a node is to create more than one container - a group united in a link. What is the best way to split a node? The linking itself, as I understand it, simply links the nodes in the hosts files?

Secondly, how should the container be updated after making changes to the image? As I understand it, the container is being recreated and all working directories will be deleted? And accordingly, the correct way to avoid damaging site files is to add external folders with the VOLUME directive as working directories.

Thirdly, they wrote a link that updating the container causes a breakdown in links that are linked by ID at the system level, and in order to prevent this, I use the aplication level above docker in the form of either fig or vagrant. I’m thinking why these links are needed if they just set up the hosts file, you can also set it up with handles and access ip, not host.

Fourthly, if docker needs to be covered with an external aplication level, then this is some kind of crap, plus I wanted to delve into the nodes without connecting to them, I found folders with long id as a name - this is not as beautiful as on pure lxc.

I think that docker suits me at all? Isn't it better to just use lxc, I read it like that, everything seems to be simple, you create a container, go in, install the software, set up the network and copy it to the nodes?

Colleagues, help organize the mess in your head! :)

Answer the question

In order to leave comments, you need to log in

1 answer(s)
V
Valeriy Solovyov, 2015-02-12
@sumej

Hey

I pursue 2 goals, to study new interesting technologies and organize a development team.
What I have: a dedicated server and root access. What I want to get is a develov machine and 3 nodes for the developer

Would you describe what developers are developing there =) (websites / software / pictures)?
For development, IMHO, you need an unchanged developer environment + a repository where the results of the work are stored. And also separately there should be a test environment.
I usually make a developer environment (what you need to connect the IDE to):
It doesn’t matter at all whether you have 10 containers, or 1. What matters is what’s inside. For example, you have django 1.4.18 and continue development on 1.6.x. What will happen? Or you have a site that was written in the days of php 5.2.1, and in the 5.2.26 dev environment, what will happen?
In my opinion, you should have a clear correspondence between the developer and production environments. Autotests on the same jenkins. And if you change the version of the developer environment, the product version also changes.
PS:
All this can be done on docker / lxc / chroot / bare metal / etc - which tools are only. I don't think you understand your goals.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question