0
点赞
收藏
分享

微信扫一扫

万物皆可模块化分解

日月同辉9908 03-06 07:01 阅读 5

问题

上一篇文章,在AWS云上面部署了k8s集群,这次接下来,需要在一个docker镜像私库。

步骤

创建docker镜像私库

打开AWS ECR主页,创建一个docker镜像私库,如下图:
入门AWS ECR
设置私有镜像库名称,直接创建私有库,如下图:
创建私有库
结果如下图:
ecr效果

AWS CLI推送镜像

选中镜像库,选择“查看推送命令”,如下图:
查看推送命令
设置本地CLI,登录AWS ECR的docker镜像库,如下命令:

aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin xxxxxxxxxx.dkr.ecr.us-east-1.amazonaws.com

登录成功如下图:
Docker登录成功

构建Docker镜像

准备一个Spring Hello World项目

package com.xxxx.demo;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {
    @GetMapping("/")
    public String hello() {
        return "Hello World!";
    }
}

Dockerfile

FROM bellsoft/liberica-openjdk-alpine-musl:17
RUN addgroup -S spring && adduser -S spring -G spring
USER spring:spring
VOLUME /tmp
WORKDIR /home/myapp
COPY target/*.jar app.jar
EXPOSE 8080
CMD ["java", "-jar", "app.jar"]

构建镜像

docker build -t demo .

本地测试镜像

docker run -p 8080:8080 -it --rm --name my-spring-app demo

运行之前本地构建的docker镜像,启动之后,打开如下页面:
测试本地docker镜像
本地docker镜像没有问题后,我们下一步开始给本地docker镜像打tag。

打标签Docker镜像

docker tag demo:latest xxxxxxxx.dkr.ecr.us-east-1.amazonaws.com/demo:latest

推送到AWS ECR中

docker push xxxxxxxxxx.dkr.ecr.us-east-1.amazonaws.com/demo:latest

等待上传成功后,就可以去 AWS ECR主页查看刚上传的镜像了,如下图:
docker推送验证
到此为止。

总结

AWS ECR的使用,还是很简单的,只要本地AWS CLI能正常使用,大部份流程和Docker推送流程都差不多。

参考

  • 开始通过 AWS Management Console 使用 Amazon ECR
  • 将 Amazon ECR 与 AWS CLI 结合使用
举报

相关推荐

0 条评论