Pragnę uruchomić docker w instancji EC2 API z AWS, i mam Dockerrun.aws.json takiego:AWS Elastic Beanstalk, Dockerrun.aws.json i wiele portów na metę Döcker
{
"AWSEBDockerrunVersion": "1",
"Authentication": {
"Bucket": "<BUCKET>",
"Key": ".dockercfg"
},
"Image": {
"Name": "<NAME>:<TAG>",
"Update": "true"
},
"Ports": [
{
"ContainerPort": "80"
},
{
"ContainerPort": "443"
}
]
}
jak można widzę, mam wiele portów do odsłonięcia, ale elastyczna fasolka ujawnia tylko pierwszą z nich.
Znalazłem to zdanie w dokumentacji: Możesz określić wiele portów kontenera, ale AWS Elastic Beanstalk używa tylko pierwszego do połączenia twojego kontenera z odwrotnym proxy hosta i trasowania żądań z publicznego Internetu.
Moje pytanie brzmi: dlaczego?
Mam uwierzytelnianie, które używa protokołu Oauth2, i muszę korzystać z protokołu HTTPS z oczywistych względów bezpieczeństwa. Z tym ograniczeniem, mogę wybrać tylko HTTP lub HTTPS, ponieważ mogę tylko wystawić port 80 lub 443.
Próbowałem majstrować na przekierowaniach nginx z portami na poziomie instancji EC2, ale nie udało mi się . Jak mogę to zrobić?
Ten stackoverflow użytkownik ma ten sam problem. Exposing multiple ports from Docker within Elastic Beanstalk
Dziękując z góry