2014-02-04 2 views
1

По какой-то причине я не могу войти в контейнер докеров, используя Lxc-attach только в экземплярах EC2. Это работает на моей локальной машине и на капельках Digital Ocean (KVM), но не на Amazon EC2, сгенерированном xen-паравиртуализированным экземпляром Ubuntu12.04. Ниже приведены этапы/ошибки:lxc-attach не смог войти в пространство имен - EC2 Экземпляры

[email protected]:~/scalar/project/docker# lxc-ls 
4074ebf985cfe09b2880a9eabbc7ad3e59283f425f64cfaa72f59f1f23661d18 

[email protected]:~/scalar/project/docker# lxc-attach -n 4074ebf985cfe09b2880a9eabbc7ad3e59283f425f64cfaa72f59f1f23661d18 
lxc-attach: No such file or directory - failed to open '/proc/19731/ns/pid' 
lxc-attach: failed to enter the namespace 

Кто-нибудь знает, есть ли способ решить эту проблему? Вот мои Докер версия детали:

Client version: 0.7.6 
Go version (client): go1.2 
Git commit (client): bc3b2ec 
Server version: 0.7.6 
Git commit (server): bc3b2ec 
Go version (server): go1.2 
Last stable version: 0.7.6 

также:

lxc version: 0.7.5 

ответ

3

Какова ваша версия ядра?

lxc-attach требует функций, отсутствующих в исходном ядре 12.04 (3.5). Вам нужно, по крайней мере, 3,8, который IIRC доступен в бэкпорте.

3

Как предположил Creac, ядро ​​не было достаточно высокой версии. (И если я пытаюсь повторно развертывания Ubuntu образа AWS он все еще использует ядро ​​3.2)

Чтобы устранить эту проблему, я побежал следующую команду, чтобы получить 3,8:

sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring 

или вы можете запустить следующую команду чтобы получить 3,5

sudo apt-get install linux-image-generic-lts-quantal linux-headers-generic-lts-quantal 

Пожалуйста, обратите внимание, что эти команды Ubuntu конкретные (по вопросу) и установить «общий» ядро, а не «виртуального» ядра, но он должен работать. [источник]

Обратите внимание, что я попытался обновить исходный ответ Creac этой дополнительной информацией, но изменение было отклонено, поэтому я почувствовал необходимость создания нового ответа для других, если они захотят.

source of where I found the commands