Tengo el código de mi aplicación que maneja el enrutamiento y la API tranquila, escrito en golang, sin embargo, todo el código del lado del cliente está escrito en Vue y quería aislar los dos para no tener que implementar todo el contenedor cuando modifiqué un div. Busqué alojar todo mi contenido estático en un CDN, sin embargo, es un poco difícil hacer referencia dinámicamente al hash
<!DOCTYPE html> <html> <head> <meta charset=utf-8> <title>Test</title> <link href=/static/css/app.c6d9c9fc12c1dbaee77703a4dd731a8b.css rel=stylesheet> </head> <body> <div id=app> </div> <script type=text/javascript src=/static/js/manifest.c40d98f512f01d44a02f.js> </script> <script type=text/javascript src=/static/js/vendor.94202f7575960a15f341.js> </script> <script type=text/javascript src=/static/js/app.7a2bba27be158abd2c91.js> </script> </body> </html>
Pensé en extraer dinámicamente desde el front-end S3, sin embargo, esto podría ser costoso incluso si lo guardo en caché. ¿Hay alguna forma de atar los ganchos git de AWS EB y tirar de los contenedores acoplables apropiados?
Lo que terminé haciendo fue usar cloudfront, señalar mi www.website.com
al sitio de cloudfront, configurar ssl, por lo que ahora mi implementación de front-end solo empuja a s3 esencialmente.
Luego tengo mi api ejecutándose en elastic beanstalk y también tengo ssl configurado, así que ahora, si quiero acceder a la api, reenvío cualquier api.website.com
al nombre del servidor. También configuré ssl para que todo esté encriptado.
También estoy versionando mi api como api.website.com/v1/<endpoint>
¡Las implementaciones son muy sencillas ahora!