JSON not working as a command in ECS

0

I have a json command which I use to setup some configuration settings in my containers and it works fine when used with docker compose and also when I use ecs-cli to deploy it on ecs. When I try to create new revision of the task definition by changing some port values in the command it gives JSON error as it adds and addition " to the command which leads to the failure. Now the task definition created from the cli for fine if I don't touch the command. Is there a fix for it.

1 Antwort
1

Putting JSON in the command might be tricky via the UI. When you use docker-compose, given it's in YAML, it is much easier to write that up.

To go from docker-compose to ECS, I would recommend to try out ECS Compose-X which will translate your docker-compose files into CFN templates. If anything, you might be able to generate the JSON/YAML template that will contain your task and containers definition which will quote / escape your JSON argument accordingly. Might help you get on the right track.

As an alternative, something I have done in multiple places, you can set a complex string value as an environment variable and use that in the command.

Hope this helps,

profile picture
beantwortet vor 2 Jahren
  • So basically what we want is to have task definition and the make changes to it depending on situation , we want to move away from the cli and spin up multiple containers with different ports form the task definition which we will be able to control through lambda . In our use case we don't want have to access cli options.

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen