Соединение контейнеров Докера

Можно установить два различных имен пользователей, каждого с их паролем, для той же учетной записи. Выполненный vipw отредактировать /etc/passwd вручную, копируйте существующую строку для учетной записи, которой Вы интересуетесь и изменяете имя пользователя (и если Вам нравятся поле Gecos, корневой каталог и оболочка). Выполненный vipw -s и копируйте строку для того пользователя в /etc/shadow. Войдите в систему под новым именем пользователя и работайте passwd изменить пароль для нового имени пользователя. У Вас теперь есть два различных имен пользователей с различными паролями, для той же учетной записи (идентификатор пользователя - то, что определяет учетную запись).

Это - вероятно, не хорошая идея. В зависимости от того, что Вы пытаетесь сделать, другие подходы могут быть более соответствующими:

  • Создайте другую учетную запись и совместно используйте файлы путем фиксации и проверки из управления версиями.
  • Создайте другую учетную запись, создайте группу, что оба учетных записей пользователей принадлежат и дают доступ для записи группы к файлам, которые Вы хотите совместно использовать.
  • Создайте другую учетную запись и сделайте первый отчет право на команды выполнения как та учетная запись с sudo:

    user1 ALL = (user2) ALL
    
  • Создайте ключ SSH для учетной записи, которая только позволяет выполнять одну определенную команду.

4
09.02.2017, 16:01
2 ответа
[119109] На самом деле Docker не делает никакой виртуализации, это просто инструмент, который обрабатывает изображения и использует LXC виртуализацию контейнеров для их запуска. Думаю, на самом деле вы ищете LXC и его возможности, здесь. LXC может работать в виртуальной сети, а доступ к MySQL можно получить по сети. Единственное, что вам нужно, это соединить строительные блоки вместе ;)

В типичной установке каждый хост имеет свой собственный IP адрес и набор открытых портов, и каждый хост может получить доступ к TCP/IP сервисам других хостов по виртуальной сети. Безопасность обеспечивается ядром Linux. Одним из способов обеспечения безопасности является старый добрый брандмауэр на базе iptables. Но могут быть и другие способы, основанные на маркировке selinux[119112].

0
27.01.2020, 20:58
[1175368]Способ, которым работают контейнеры Docker, заключается в том, что они изолированы по умолчанию, если только вы не настроили их по-другому.

Чтобы ответить на свой вопрос, вы можете открыть нужные вам порты, а также связать контейнеры через эти порты, поэтому они взаимодействуют только через указанный вами порт.

Set /p INPUT= Type the path to append
set PATH = %INPUT%;%PATH%
При указании в файле докера эта команда называется 'EXPOSE': [1175738]http://docs.docker.io/reference/builder/#expose

При запуске контейнера вы можете передать и порт, который хотите выставить, прямо при запуске (переопределяет то, что может быть указано в оригинальном файле докера):

-p, --publish=[] Publish=[] Publish's port to the container's to the host формат: ip:hostPort:containerPort | ip:containerPort | hostPort:containerPort (используйте "docker port", чтобы увидеть фактическое отображение)

См. также раздел Ссылка, [1175742]http://docs.docker.io/use/working_with_links_names/#working-with-links-names

#!/usr/bin/perl

use strict;
use warnings;

my $key = 'a';
my @data = ();

while(<>) {  
    chomp($_);
    my $line = $_;

    my ($k, $d) = split(/\|/, $line);

    if($k eq $key) {
        push(@data, $d);
    } else {
        my $text = join ',', map { qq/'$_'/ } @data;
        print "'$key' => [$text],\n";
        @data = ();
        push(@data, $d);
        $key = $k
    }
}
# this prints out any data still left
my $text = join ',', map { qq/'$_'/ } @data;
print "'$key' => [$text],\n"; 
Дальнейшее чтение относительно Wordpress and Docker:[12144]https://www.digitalocean.com/community/articles/how-to-dockerise-and-deploy-multiple-wordpress-applications-on-ubuntu[12145]https://github.com/tutumcloud/tutum-docker-wordpress[12146]https://github. com/tutumcloud/tutum-docker-mysql[12147]
3
27.01.2020, 20:58

Теги

Похожие вопросы