Не удается запустить докер в Cloud9 IDE

Я хочу, чтобы Docker работал в Cloud9 IDE, но у меня проблемы с разрешениями. Есть ли способ разрешить это?

$ sudo apt-get install docker
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  docker
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
1 not fully installed or removed.
Need to get 12.2 kB of archives.
After this operation, 65.5 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu/ trusty-updates/universe docker amd64 1.5-1 [12.2 kB]
Fetched 12.2 kB in 0s (30.5 kB/s)   
Selecting previously unselected package docker.
(Reading database ... 123844 files and directories currently installed.)
Preparing to unpack .../docker_1.5-1_amd64.deb ...
Unpacking docker (1.5-1) ...
Processing triggers for menu (2.1.46ubuntu1) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Setting up cgroup-lite (1.9) ...
invoke-rc.d: unknown initscript, /etc/init.d/cgroup-lite not found.
dpkg: error processing package cgroup-lite (--configure):
 subprocess installed post-installation script returned error exit status 100
Setting up docker (1.5-1) ...
Processing triggers for menu (2.1.46ubuntu1) ...
Errors were encountered while processing:
 cgroup-lite
E: Sub-process /usr/bin/dpkg returned an error code (1)

$ sudo docker login
Username: <>
Password: <>
Email: <>
2015/01/01 05:11:28 Cannot connect to the Docker daemon. Is 'docker -d' running on this host?

$ sudo docker -d
2015/01/01 05:12:06 docker daemon: 1.0.1 990021a; execdriver: native; graphdriver: 
[0c39ae0d] +job serveapi(unix:///var/run/docker.sock)
[0c39ae0d] +job initserver()
[0c39ae0d.initserver()] Creating server
2015/01/01 05:12:06 Listening for HTTP on unix (/var/run/docker.sock)
[0c39ae0d] +job init_networkdriver()
[0c39ae0d.init_networkdriver()] creating new bridge for docker0
operation not permitted
[0c39ae0d] -job init_networkdriver() = ERR (1)
operation not permitted
[0c39ae0d] -job initserver() = ERR (1)
2015/01/01 05:12:06 operation not permitted

$ sudo service docker start
docker: unrecognized service

Lorem ipsum stackoverflow вы раздражаете, заставляя меня писать больше, когда это не нужно делать.

Ответ 1

Я с подозрением отношусь к строке apt-get install docker, так как это какой-то другой докер. Вы можете попробовать docker.io или lxc-docker в соответствии с http://docs.docker.com/installation/ubuntulinux/

Ответ 2

Обновление. Ответ ниже относится к c9.io, а не к AWS Cloud9. AWS Cloud9 позволяет вам запускать Docker, как обычно, при любой поддержке, которую вы используете для среды, будь то EC2 или другой поставщик виртуальных машин.


Установка Docker в рабочей области Cloud9 не будет работать, поскольку рабочие области C9 работают в Docker. Запуск Docker внутри Docker потребовал бы специальных разрешений и поэтому не рекомендуется тем, кто знает лучше по соображениям безопасности.

При этом вы можете использовать Docker из рабочей области SSH, которая позволяет подключать Cloud9 к вашему собственному серверу. Поскольку это рабочее пространство не работает в Docker (на серверах Cloud9), вы можете делать с ним все, что захотите (включая запуск Docker).

Ответ 3

Cloud9 IDE (c9.io) не поддерживает Docker, поскольку сама среда использует Docker. Они не хотят, чтобы пользователи слишком близко подходили к среде корневого уровня Docker. Вот их информация о Docker и другом программном обеспечении, которое они не поддерживают: Cloud9 Software, они не поддерживают список. Мне удалось установить Docker на c9.io, но он выдавал ошибки при попытке использовать метод установки стабильного репозитория Docker; что привело меня сюда.

Интересно отметить, что облачная версия AWS Hosted позволяет более глубоко использовать Docker. К сожалению, это отдельная стоимость и интерфейс для пользователей через AWS... возможно, я переключу все вместе? Вот информация о AWS Cloud9, поддерживающей Docker, и ссылка на целевую страницу AWS для cloud9.

Ответ 4

Области Cloud9 работают в контейнерах Docker. Они не могут иметь контейнеры докеров внутри своих контейнеров-докеров, потому что они должны быть привилегированными, что представляет угрозу безопасности.

Подробнее здесь: https://community.c9.io/t/workspace-from-dockerfile-snapshots/34