Недопустимый формат ссылки Docker: имя репозитория должно быть в нижнем регистре

Я все время получаю сообщение об ошибке, когда пытаюсь запустить команду докера.

Я получаю сообщение об ошибке: docker: invalid reference format: repository name must be lowercase.

Я выполняю следующую команду:

docker run
          -itd
          --name media-planner-api-qa
          --restart=always
          -v /home/prj/media_planner_api_logs:/media-planner-api/logs
          -e ENVIRONMENT=qa
          -e FLASK_APP=index.py
          -e DEBUG=False
          -e PROFILE=True
          -e LOCAL_S1_API_ENV=sa1qa21
          -e QA_S1_API_ENV=$QA_S1_API_ENV
          -e PROD_S1_API_ENV=s1
          -e S1_API_BASE_URL=sa1qa21
          -e SERVICE_EMAIL=$SERVICE_EMAIL
          -e SERVICE_NAME=$SERVICE_NAME
          -e SMTP_HOST=$SMTP_HOST
          -e SMTP_USERNAME=$SMTP_USERNAME
          -e SMTP_PASSWORD=$SMTP_PASSWORD
          -e SMTP_PORT=$SMTP_PORT
          -e SMTP_LOCAL=0
          -e WORKER_USERNAME=$WORKER_USERNAME
          -e WORKER_PASSWORD=$WORKER_PASSWORD
          -e AUTH0_CLIENTID_FC=$AUTH0_CLIENTID_FC_QA
          -e AUTH0_SECRET_FC=$AUTH0_SECRET_FC_QA
          -e [email protected]
          -p 4000:4000
          --network='host'
          72343423423423.dkr.ecr.us-east-1.amazonaws.com/prj/media-planner-api-qa:latest

Спасибо


person Elliot Reeve    schedule 16.09.2019    source источник
comment
72343423423423.dkr.ecr.us-east-1.amazonaws.com/prj/ недействителен   -  person LinPy    schedule 16.09.2019
comment
@LinPy Ну, я подставил идентификатор учетной записи - как он недействителен?   -  person Elliot Reeve    schedule 16.09.2019
comment
это должно быть что-то вроде myrepo.com/myimage:mytag, у вас есть дополнительный слой /prj/   -  person LinPy    schedule 16.09.2019
comment
перепроверьте команду. репо кажется действительным. указанная выше команда действительна, может быть, вы используете другое имя в обычной команде?   -  person Adiii    schedule 16.09.2019
comment
@LinPy Это репо с использованием AWS ECR. Он дает URL-адрес, который я копирую и вставляю.   -  person Elliot Reeve    schedule 16.09.2019
comment
@Adiii Что вы подразумеваете под другим именем в реальной команде?   -  person Elliot Reeve    schedule 16.09.2019
comment
Я имею в виду двойное имя, в имени репо нет ничего недопустимого. попробуйте запустить docker run -itd ваша полная команда кажется, что в ENV есть места   -  person Adiii    schedule 16.09.2019
comment
Вот и все, спасибо @Adiii - пробел в одной из переменных ENV!   -  person Elliot Reeve    schedule 16.09.2019
comment
попробуйте поместить все ENV в двойные кавычки "   -  person Adiii    schedule 16.09.2019


Ответы (1)


Имя репозитория действительно согласно документации AWS.

Одна вещь, которая может вызвать эту проблему, если в каком-либо ENV есть место в своем значении. поэтому постарайтесь заключить все env в двойные кавычки ".

person Adiii    schedule 16.09.2019
comment
Подтверждено, что в одной из переменных env был пробел. - person Elliot Reeve; 16.09.2019