Docker 镜像在未指定仓库时默认是从 Docker Hub 拉取的。如果需向 Docker Hub 推送镜像的话还可用 docker login
在交互中完成登陆 Docker Hub 的操作。docker login
的命令格式是
docker login [OPTIONS] [SERVER]
所以我们可以连接到任何的 Docker 镜像仓库,也可以是本机,但我们这里所要介绍的是如何推送镜像到 AWS 给我们提供的 Docker 镜像仓库(Amazon ECR - Amazon Elastic Container Registry)。每个帐号下都有自己独立的仓库,镜像推送到了 Amazon ECR 后我们能够很方便的在 ECS, Batch 服务中使用它,也可以从 ECR 拉取镜像到本地来。
首先我们来做一个运行 Spring Boot Web 的简单的 Docker 镜像,假定已用 mvc pacakge
生成了一个可独立运行的 jar 包 java-webapp-0.0.1-SNAPSHOT.jar
。该应用开启一个 Web 服务,访问 http://localhost:8080 显示一行字符串 Hello World!
创建一个目录 aws-docker, 并把 java-webapp-0.0.1-SNAPSHOT.jar
移入该目录,在其下创建 Dockerfile
文件,文件目录结构如下:
aws-docker
├── Dockerfile
└── java-webapp-0.0.1-SNAPSHOT.jar