mxs*_*cho 45 installation amazon-ami amazon-ec2 amazon-web-services docker
在运行 AMI 的 AWS EC2 实例上安装 Docker 的当前方法是什么?已经发布了 Docker 企业版,现在我想知道是否有任何变化。到现在为止,我一直在使用yum install docker
并且现在确实获得了 Docker 版本1.12.6, build 7392c3b/1.12.6
(2017 年 3 月 3 日)。但是,GitHub 上的 Docker 存储库告诉我已经有更新的版本了。
我记得有官方多克尔(包)库名为包docker-engine
更换docker
前一段时间,现在他们似乎分成了包成docker-ce
和docker-ee
,其中如“不支持红帽企业Linux泊坞社区版(CE泊坞窗)。” [来源]
那么,使用上述方法在运行 AMI 的 EC2 实例上获取最新的稳定 Docker 版本是否正确,或者我是否需要从其他地方提取软件包(如果是,是 CE 还是 EE)?
小智 78
要让 Docker 在 AWS AMI 上运行,您应该按照以下步骤操作(这些步骤都假设您已通过 ssh 连接到 EC2 实例)。
更新实例上的软件包
[ec2-user ~]$ sudo yum update -y
安装 Docker
[ec2-user ~]$ sudo yum install docker -y
启动 Docker 服务
[ec2-user ~]$ sudo service docker start
将 ec2-user 添加到 docker 组,这样您就可以在不使用 sudo 的情况下执行 Docker 命令。
[ec2-user ~]$ sudo usermod -a -G docker ec2-user
然后,您应该能够运行所有 docker 命令而无需sudo
. 运行第四个命令后,我确实需要注销并重新登录以使更改生效。
解决所有这些问题最难的部分是容器-selinux 要求。只需在http://mirror.centos.org/centos/7/extras/x86_64/Packages/ 中找到最新版本并先安装即可。此外,EC2 实例可能没有合适的熵生成器,因此haveged
可能需要安装。
其余部分取自https://docs.docker.com/install/linux/docker-ce/centos/,并添加了 hasged 和 firewalld。所有这些都必须以 root 身份正确完成sudo
。
yum install -q -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.42-1.gitad8f0f7.el7.noarch.rpm
yum install -q -y http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/h/haveged-1.9.1-1.el7.x86_64.rpm
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -q -y firewalld docker-ce
systemctl enable firewalld
systemctl start firewalld
firewall-cmd --add-port=2377/tcp --permanent
firewall-cmd --add-port=2376/tcp --permanent
firewall-cmd --add-port=7946/tcp --permanent
firewall-cmd --add-port=7946/udp --permanent
firewall-cmd --add-port=4789/udp --permanent
firewall-cmd --zone=public --permanent --add-masquerade
firewall-cmd --reload
systemctl enable haveged
systemctl start haveged
systemctl enable docker
systemctl start docker
setenforce 1
Run Code Online (Sandbox Code Playgroud)
通过修改 /etc/sysconfig/selinux
为启用 SELinux
SELINUX=enforcing
SELINUXTYPE=targeted
Run Code Online (Sandbox Code Playgroud)
然后通过发出重新启动您的实例 shutdown -r now
sudo docker version
截至本文发布时,执行应产生...
客户: 版本:18.03.0-ce API 版本:1.37 转版本:go1.9.4 Git提交:0520e24 内置:2018 年 3 月 21 日星期三 23:09:15 操作系统/架构:linux/amd64 实验:假 编排:swarm 服务器: 引擎: 版本:18.03.0-ce API 版本:1.37(最低版本 1.12) 转版本:go1.9.4 Git提交:0520e24 内置:2018 年 3 月 21 日星期三 23:13:03 操作系统/架构:linux/amd64 实验:假
归档时间: |
|
查看次数: |
86202 次 |
最近记录: |