Как подтолкнуть к составному изображению ECR?
У меня есть файл docker-compose:
version: '3.4'
services:
nginx:
container_name: some-nginx
image: nginx:latest
restart: always
ports:
- 80:80
- 443:443
mongodb:
container_name: some-mongo
image: mongo:latest
environment:
- MONGO_DATA_DIR=/data/db
- MONGO_LOG_DIR=/dev/null
ports:
- 27017:27017
command: mongod --smallfiles --logpath=/dev/null # --quiet
Я хочу перенести в Amazon Elastic Container Registry (ECR), используя команды:
docker tag testapper:latest 619625705037.dkr.ecr.us-east-2.amazonaws.com/testapper:latest
Но я получил сообщение:
Ответ об ошибке от демона: Нет такого изображения: testapper:latest
Когда я бегу docker-compose build
Я получил это сообщение:
nginx uses an image, skipping
mongodb uses an image, skipping
Что это значит? Как подтолкнуть мои изображения в ECR?
1 ответ
Все ваши док-контейнеры используют существующие образы (image
ключевое слово)
services:
nginx:
image: nginx:latest
mongodb:
image: mongo:latest
поэтому вам не нужно строить их.
Я полагаю, что ECS найдет эти официальные изображения самостоятельно, поэтому вам не нужно отправлять их в частное хранилище (ECR). (не уверен на 100%)
В случае, если вы хотите выдвинуть собственное изображение, общий поток
docker build -t your_image_name:tag path
docker tag your_image_name:tag 619625705037.dkr.ecr.us-east-2.amazonaws.com/your_image_name:tag
# or
docker build -t 619625705037.dkr.ecr.us-east-2.amazonaws.com/your_image_name:tag path
docker push 619625705037.dkr.ecr.us-east-2.amazonaws.com/your_image_name:tag
Ты можешь использовать docker-compose build
создать и пометить в то же время, если ваш составной файл похож
services:
nginx:
image: 619625705037.dkr.ecr.us-east-2.amazonaws.com/your_image_name:tag
build: ./my-nginx-path