ise*_*xxx 3 amazon-ec2 amazon-web-services docker amazon-ecr amazon-linux
我想为Amazon ECR创建docker镜像。但yum在我的Amazon Linux2中找不到它。
[root@*** ~]# yum install -y docker
Loaded plugins: amazon-id, rhui-lb, search-disabled-repos
No package docker available.
Error: Nothing to do
Run Code Online (Sandbox Code Playgroud)
接下来,我尝试使用amazon-linux-extras。
但是也没有找到amazon-linux-extras。
[root@*** ~]# amazon-linux-extras install docker -y
-bash: amazon-linux-extras: command not found
[root@*** ~]# find / -name 'amazon-linux-extras'
[root@*** ~]$ cat /proc/version
Linux version 4.14.77-81.59.amzn2.x86_64 (mockbuild@ip-10-0-1-59) (gcc version 7.3.1 20180303 (Red Hat 7.3.1-5) (GCC)) #1 SMP Mon Nov 12 21:32:48 UTC 2018
Run Code Online (Sandbox Code Playgroud)
如何安装amazon-linux-extras或创建docker映像?
确保您已安装 amazon-linux-extras
[root@ip-20-0-0-112 ~]# which amazon-linux-extras
/usr/bin/amazon-linux-extras
Run Code Online (Sandbox Code Playgroud)
如果没有使用 yum 安装 amazon-linux-extras
yum -y install amazon-linux-extras
Run Code Online (Sandbox Code Playgroud)
然后使用安装docker
amazon-linux-extras install docker
Run Code Online (Sandbox Code Playgroud)
sudo yum update -y
sudo yum -y install docker
Run Code Online (Sandbox Code Playgroud)
sudo service docker start
Run Code Online (Sandbox Code Playgroud)
ec2-user用户中访问 Docker 命令sudo usermod -a -G docker ec2-user
sudo chmod 666 /var/run/docker.sock
docker version
Run Code Online (Sandbox Code Playgroud)
很抱歉,这是我的误会。我的操作系统是Redhat Linux。我通过安装docker
yum-config-manager --enable rhui-REGION-rhel-server-extras
yum -y install docker
systemctl start docker
docker version
Run Code Online (Sandbox Code Playgroud)
我在 amazon linux (RHEL 7.2 ) - ami-035b3c7efe6d061d5,
cat /proc/version
Linux version 4.14.123-86.109.amzn1.x86_64 (mockbuild@koji-pdx-corp-builder-64004) (gcc version 7.2.1 20170915 (Red Hat 7.2.1-2) (GCC)) #1 SMP Mon Jun 10 19:44:53 UTC 2019
Run Code Online (Sandbox Code Playgroud)
以下脚本无需安装即可运行amazon-linux-extras install
sudo yum -y install docker
sudo service docker start
sudo chmod 666 /var/run/docker.sock
Run Code Online (Sandbox Code Playgroud)
我必须解决权限问题。此处还描述了如何修复 docker: 权限被拒绝问题
然后我可以检查容器,
[ec2-user@ip-30-0-0-196 ~]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Run Code Online (Sandbox Code Playgroud)
您可以使用以下脚本在 Amazon Linux 2 实例中安装 docker。另外,您可以在 ec2 用户数据部分中提及以下脚本,以便在服务器引导时自动安装 docker。
#!/bin/bash
sudo yum update -y
sudo yum -y install docker
sudo service docker start
sudo usermod -a -G docker ec2-user
sudo chmod 666 /var/run/docker.sock
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12430 次 |
| 最近记录: |