Эта страница работает должным образом, если я выберу образ Ubuntu 14.04 .

https://docs.docker.com/engine/installation/cloud/cloud-ex-aws/

Но если я выберу Amazon Linux AMI (первый в списке, показанном на изображении), я не смогу установить версию докера 1.12.

Однако я могу установить старую версию, используя ...

yum install docker 

Но я пытаюсь установить последнюю версию 1.12 на AMI Amazon Linux. Любое предложение будет оценено.

2
shantanuo 7 Сен 2016 в 07:53

6 ответов

Лучший ответ

По состоянию на середину октября 2016 года это невозможно: https://github.com/docker/docker / issues / 27313

Короче говоря, похоже, что между разработчиками AWS и Docker должна быть некоторая координация, и эта координация еще не произошла: https://github.com/docker/docker/pull/17283#issuecomment-163456402

Варианты пары:

  1. Подождите, пока этот процесс не завершится и не будет выпущен новый AWS Linux AMI, в котором вы могли бы просто запустить $ sudo yum install -y docker и быть более или менее готовым к работе с 1.12

  2. Выберите другой AMI, для которого потребуется дополнительная установка / настройка в зависимости от ваших требований.

Напр. Вы упомянули, что пробовали Ubuntu 14.04 AMI. Если вы подключитесь к этому экземпляру по SSH и попытаетесь скопировать некоторые большие файлы с S3 и разархивировать их на хост-машине, чтобы смонтировать их как тома в свои контейнеры, у вас возникнет проблема. В Ubuntu 14.04 AMI не установлен ни инструмент aws-cli, ни команда «unzip» из коробки (ни докер, если на то пошло), поэтому вам нужно прочитать http://docs.aws.amazon.com/cli/latest/userguide/ install.html # install-bundle-other-os и запустите $ sudo apt-get unzip, чтобы начать работу. У AWS Linux AMI гораздо больше наворотов из коробки. Если вы не против работы с конфигурацией и использования немного другой системы репозитория, пока что это неплохой вариант.)

2
Victor 14 Окт 2016 в 22:52

Мне удалось запустить Docker 1.12.2 на Amazon Linux. Вот шаги, которые я предпринял:

Загрузите нужную версию Docker в свой экземпляр Amazon Linux (в виде сжатого файла tar) и распакуйте его. Это создает каталог с именем docker/, содержащий двоичные файлы Docker.

wget https://get.docker.com/builds/Linux/x86_64/docker-1.12.2.tgz
tar -xvzf docker-1.12.2.tgz

Переместите все двоичные файлы Docker в /usr/local/bin.

sudo mv docker/* /usr/local/bin/

Перед запуском демона Docker необходимо запустить сценарий cgroupfs-mount (от имени суперпользователя). Самый простой способ получить этот сценарий - клонировать репозиторий git, содержащий его.

git clone https://github.com/tianon/cgroupfs-mount
sudo mv cgroupfs-mount/cgroupfs-mount /usr/local/bin/

Перейдите к суперпользователю и убедитесь, что /usr/local/bin/ находится на вашем пути (по крайней мере, в Amazon Linux это не так по умолчанию).

sudo su
export PATH=/usr/local/bin:$PATH

Теперь вы можете запустить скрипт cgroupfs-mount и запустить демон Docker (в фоновом режиме).

cgroupfs-mount
dockerd &

Вы можете вызывать обычные команды Docker (например, docker pull) от имени любого пользователя, который принадлежит к группе docker, пока выполняется dockerd. На этих этапах установки отсутствуют автоматические запуски cgroupfs-mount и dockerd при запуске.

В стороне, я бы рекомендовал избегать Amazon Linux, если это вообще возможно, и вместо этого использовать основной дистрибутив, такой как Ubuntu или CentOS, которые, похоже, намного лучше поддерживают Docker.

3
James Hiew 3 Дек 2016 в 22:47

Вы также можете установить его из командной строки экземпляра, используя следующее:

curl -sSL https://get.docker.com/ | sh
0
Mano Marks 8 Сен 2016 в 00:16

Обновление: январь 2017 г.

Amazon предлагает докер 1.12 в репозитории обновлений (amzn-updates).

Я установил docker-1.12.6-1.17.amzn1.x86_64

4
Francisco López 17 Янв 2017 в 07:19

Я не знаю, почему ваши действия вручную не работают, но вы можете установить демон докера с помощью docker-machine.

VM_OPTS="--driver amazonec2 
--amazonec2-ami $YOUR-AMI
--amazonec2-instance-type t2.medium
--amazonec2-access-key $AWS_ACCESS_KEY_ID
--amazonec2-secret-key $AWS_SECRET_ACCESS_KEY
--amazonec2-ssh-keypath $AWS_SSH_KEYPATH
--amazonec2-region ap-southeast-2
--amazonec2-zone a
--amazonec2-security-group $YOUR_SEC_GROUP_NAME"

docker-machine create $VM_OPTS $VM_NAME
1
Bernard 7 Сен 2016 в 07:04

(например, Как обновить докер в последней версии Amazon linux AMI)

https://docs.docker.com/samples/library/amazonlinux/ Последняя версия Amazon Linux 2017.09 имеет версию Docker 17.06.2-ce.

0
Pau Ruŀlan Ferragut 3 Ноя 2017 в 13:32