{"id":1177,"date":"2026-03-11T15:20:31","date_gmt":"2026-03-11T18:20:31","guid":{"rendered":"https:\/\/maurobernal.com.ar\/blog\/?p=1177"},"modified":"2026-03-11T20:02:25","modified_gmt":"2026-03-11T23:02:25","slug":"microservicios-con-docker-arquitectura-practica","status":"publish","type":"post","link":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/","title":{"rendered":"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura"},"content":{"rendered":"\n<p class=\"intro-destacado\">Arranc\u00e9 con un monolito .NET en un solo contenedor. Funcionaba bien, hasta que el equipo creci\u00f3 y todos toc\u00e1bamos el mismo c\u00f3digo. Desplegar un cambio en la pantalla de login requer\u00eda redeployar toda la aplicaci\u00f3n. Fue entonces cuando empec\u00e9 a explorar microservicios con Docker.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Monolito vs microservicios: cu\u00e1ndo tiene sentido el cambio<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Aspecto<\/th><th>Monolito en Docker<\/th><th>Microservicios en Docker<\/th><\/tr><\/thead><tbody>\n<tr><td>Complejidad inicial<\/td><td>Baja<\/td><td>Alta<\/td><\/tr>\n<tr><td>Deploy independiente<\/td><td>No \u2014 todo o nada<\/td><td>S\u00ed \u2014 servicio por servicio<\/td><\/tr>\n<tr><td>Escalabilidad selectiva<\/td><td>No<\/td><td>S\u00ed \u2014 escalar solo lo que lo necesita<\/td><\/tr>\n<tr><td>Fallo aislado<\/td><td>Un bug afecta todo<\/td><td>Un servicio ca\u00eddo no baja todo<\/td><\/tr>\n<tr><td>Equipos independientes<\/td><td>Dif\u00edcil<\/td><td>Cada equipo due\u00f1o de su servicio<\/td><\/tr>\n<tr><td>Overhead operacional<\/td><td>Bajo<\/td><td>Alto \u2014 m\u00e1s servicios que monitorear<\/td><\/tr>\n<\/tbody><\/table><\/figure>\n\n\n\n<p>Mi recomendaci\u00f3n: empez\u00e1 con el monolito. Cuando los puntos de dolor de la tabla de arriba se vuelvan reales en tu d\u00eda a d\u00eda, ah\u00ed es el momento de dividir.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mi primera arquitectura de microservicios: auth + api + frontend<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code\"># docker-compose.yml \u2014 tres servicios independientes\n\nversion: '3.8'\n\nservices:\n  # Servicio de autenticaci\u00f3n (JWT, usuarios)\n  auth-service:\n    build: .\/services\/auth\n    environment:\n      - DB_CONNECTION=Host=postgres;Database=auth;Username=auth;Password=${AUTH_DB_PASS}\n      - JWT_SECRET=${JWT_SECRET}\n      - JWT_EXPIRY=1h\n    depends_on:\n      postgres:\n        condition: service_healthy\n    restart: unless-stopped\n    # Sin puerto expuesto - solo accesible internamente\n\n  # API principal de negocio\n  api-service:\n    build: .\/services\/api\n    environment:\n      - DB_CONNECTION=Host=postgres;Database=apidb;Username=api;Password=${API_DB_PASS}\n      - AUTH_SERVICE_URL=http:\/\/auth-service:8080\n      - CACHE_URL=redis:6379\n    depends_on:\n      - auth-service\n      - redis\n    restart: unless-stopped\n\n  # Frontend React\n  frontend:\n    build: .\/services\/frontend\n    environment:\n      - REACT_APP_API_URL=http:\/\/api-service:8080\n    restart: unless-stopped\n\n  # Proxy - \u00fanico punto de entrada externo\n  nginx:\n    image: nginx:1.25-alpine\n    ports:\n      - \"80:80\"\n    volumes:\n      - .\/nginx\/microservices.conf:\/etc\/nginx\/nginx.conf:ro\n    depends_on:\n      - frontend\n      - api-service\n\n  # Infraestructura compartida\n  postgres:\n    image: postgres:16-alpine\n    environment:\n      POSTGRES_MULTIPLE_DATABASES: auth,apidb  # extensi\u00f3n para m\u00faltiples DBs\n      POSTGRES_PASSWORD: ${POSTGRES_ROOT_PASS}\n    volumes:\n      - postgres-data:\/var\/lib\/postgresql\/data\n    healthcheck:\n      test: [\"CMD-SHELL\", \"pg_isready\"]\n      interval: 10s\n      retries: 5\n\n  redis:\n    image: redis:7-alpine\n    volumes:\n      - redis-data:\/data\n\nvolumes:\n  postgres-data:\n  redis-data:<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Comunicaci\u00f3n entre servicios<\/h2>\n\n\n\n<p>Dentro de la red Docker, los servicios se llaman por nombre. La API valida tokens llamando al servicio de auth en cada request:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code\"># En el c\u00f3digo de api-service (.NET):\n\/\/ Validar token contra auth-service\nvar authResponse = await _httpClient.GetAsync(\n    $\"{_authServiceUrl}\/validate?token={token}\"\n);\n\n\/\/ En el docker-compose, AUTH_SERVICE_URL = http:\/\/auth-service:8080\n\/\/ Docker resuelve \"auth-service\" al contenedor correcto autom\u00e1ticamente<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Deploy independiente: la ventaja real<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code\"># Actualizar solo el servicio de auth sin tocar nada m\u00e1s\ndocker compose up -d --build auth-service\n\n# Escalar solo la API (recibe m\u00e1s carga)\ndocker compose up -d --scale api-service=3\n\n# Rollback solo del frontend\ndocker compose stop frontend\ndocker compose rm -f frontend\nTAG=anterior docker compose up -d frontend<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Lo que aprend\u00ed en el proceso<\/h2>\n\n\n\n<p>La transici\u00f3n de monolito a microservicios no es solo t\u00e9cnica: es organizacional. Cada servicio necesita su propio repositorio (o al menos su propia carpeta), su propio pipeline de CI\/CD y su propio due\u00f1o. La complejidad operacional sube. Por eso Docker Compose no es suficiente para microservicios en producci\u00f3n a escala \u2014 ese es el camino hacia Kubernetes, que vemos en el pr\u00f3ximo art\u00edculo.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><em>\u2190 <a href=\"https:\/\/maurobernal.com.ar\/blog\/blog\/kubernetes\/docker-cicd-pipeline-builds-reproducibles-github-actions\/\">Art\u00edculo anterior: Docker en CI\/CD<\/a> | <strong>Serie Docker Completo<\/strong> | Pr\u00f3ximo: Seguridad en Docker \u2192<\/em><\/p>\n\n\n<hr class=\"wp-block-separator\"\/>\n<p><em>\u2190 <a href=\"https:\/\/maurobernal.com.ar\/blog\/blog\/kubernetes\/docker-cicd-pipeline-builds-reproducibles-github-actions\/\">Art\u00edculo anterior: Docker en mi pipeline de CI\/CD: builds reproducibles sin sorpresas<\/a> | <strong>Serie Docker Completo<\/strong> | Pr\u00f3ximo: <a href=\"https:\/\/maurobernal.com.ar\/blog\/blog\/kubernetes\/seguridad-en-docker-buenas-practicas-errores-comunes\/\">Seguridad en Docker: errores que comet\u00ed y c\u00f3mo los correg\u00ed \u2192<\/a><\/em><\/p>","protected":false},"excerpt":{"rendered":"<p>De un monolito a tres microservicios con Docker Compose: auth, API y frontend. Cu\u00e1ndo tiene sentido dividir, c\u00f3mo se comunican los servicios y qu\u00e9 aprend\u00ed en el proceso.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[233],"tags":[267,241,242,240,259,266],"class_list":["post-1177","post","type-post","status-publish","format-standard","hentry","category-kubernetes","tag-arquitectura-software","tag-contenedores","tag-devops","tag-docker","tag-docker-compose","tag-microservicios"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura &#183; devops Mauro Bernal<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura &#183; devops Mauro Bernal\" \/>\n<meta property=\"og:description\" content=\"De un monolito a tres microservicios con Docker Compose: auth, API y frontend. Cu\u00e1ndo tiene sentido dividir, c\u00f3mo se comunican los servicios y qu\u00e9 aprend\u00ed en el proceso.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/\" \/>\n<meta property=\"og:site_name\" content=\"devops Mauro Bernal\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-11T18:20:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-11T23:02:25+00:00\" \/>\n<meta name=\"author\" content=\"Mauro Bernal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@_maurobernal\" \/>\n<meta name=\"twitter:site\" content=\"@_maurobernal\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mauro Bernal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minuto\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/\"},\"author\":{\"name\":\"Mauro Bernal\",\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/#\\\/schema\\\/person\\\/09c4dbdfb59b20e015c703fd19713283\"},\"headline\":\"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura\",\"datePublished\":\"2026-03-11T18:20:31+00:00\",\"dateModified\":\"2026-03-11T23:02:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/\"},\"wordCount\":324,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/#\\\/schema\\\/person\\\/09c4dbdfb59b20e015c703fd19713283\"},\"keywords\":[\"arquitectura-software\",\"contenedores\",\"devops\",\"docker\",\"docker-compose\",\"microservicios\"],\"articleSection\":[\"Kubernetes\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/\",\"url\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/\",\"name\":\"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura &#183; devops Mauro Bernal\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/#website\"},\"datePublished\":\"2026-03-11T18:20:31+00:00\",\"dateModified\":\"2026-03-11T23:02:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/microservicios-con-docker-arquitectura-practica\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/\",\"name\":\"devops Mauro Bernal\",\"description\":\"Cuando tu trabajo es hacer que las cosas funcionen bien...\",\"publisher\":{\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/#\\\/schema\\\/person\\\/09c4dbdfb59b20e015c703fd19713283\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/maurobernal.com.ar\\\/blog\\\/#\\\/schema\\\/person\\\/09c4dbdfb59b20e015c703fd19713283\",\"name\":\"Mauro Bernal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/maurobernal.com.ar\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logo-maurobernal.png?fit=1740%2C1740&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/maurobernal.com.ar\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logo-maurobernal.png?fit=1740%2C1740&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/maurobernal.com.ar\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logo-maurobernal.png?fit=1740%2C1740&ssl=1\",\"width\":1740,\"height\":1740,\"caption\":\"Mauro Bernal\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/maurobernal.com.ar\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logo-maurobernal.png?fit=1740%2C1740&ssl=1\"},\"description\":\"Desarrollo de Sistemas en .Net, IT Callcenters, DBA de SQL Server, Mikrotik, Pentest y T\u00e9cnico consultor de Sistemas Bejerman\",\"sameAs\":[\"https:\\\/\\\/maurobernal.com.ar\",\"https:\\\/\\\/x.com\\\/_maurobernal\",\"https:\\\/\\\/youtube.com\\\/maurobernal\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura &#183; devops Mauro Bernal","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/","og_locale":"es_ES","og_type":"article","og_title":"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura &#183; devops Mauro Bernal","og_description":"De un monolito a tres microservicios con Docker Compose: auth, API y frontend. Cu\u00e1ndo tiene sentido dividir, c\u00f3mo se comunican los servicios y qu\u00e9 aprend\u00ed en el proceso.","og_url":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/","og_site_name":"devops Mauro Bernal","article_published_time":"2026-03-11T18:20:31+00:00","article_modified_time":"2026-03-11T23:02:25+00:00","author":"Mauro Bernal","twitter_card":"summary_large_image","twitter_creator":"@_maurobernal","twitter_site":"@_maurobernal","twitter_misc":{"Escrito por":"Mauro Bernal","Tiempo de lectura":"1 minuto"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/#article","isPartOf":{"@id":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/"},"author":{"name":"Mauro Bernal","@id":"https:\/\/maurobernal.com.ar\/blog\/#\/schema\/person\/09c4dbdfb59b20e015c703fd19713283"},"headline":"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura","datePublished":"2026-03-11T18:20:31+00:00","dateModified":"2026-03-11T23:02:25+00:00","mainEntityOfPage":{"@id":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/"},"wordCount":324,"commentCount":0,"publisher":{"@id":"https:\/\/maurobernal.com.ar\/blog\/#\/schema\/person\/09c4dbdfb59b20e015c703fd19713283"},"keywords":["arquitectura-software","contenedores","devops","docker","docker-compose","microservicios"],"articleSection":["Kubernetes"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/","url":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/","name":"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura &#183; devops Mauro Bernal","isPartOf":{"@id":"https:\/\/maurobernal.com.ar\/blog\/#website"},"datePublished":"2026-03-11T18:20:31+00:00","dateModified":"2026-03-11T23:02:25+00:00","breadcrumb":{"@id":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/maurobernal.com.ar\/blog\/microservicios-con-docker-arquitectura-practica\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/maurobernal.com.ar\/blog\/"},{"@type":"ListItem","position":2,"name":"Microservicios con Docker: lo que aprend\u00ed armando mi primera arquitectura"}]},{"@type":"WebSite","@id":"https:\/\/maurobernal.com.ar\/blog\/#website","url":"https:\/\/maurobernal.com.ar\/blog\/","name":"devops Mauro Bernal","description":"Cuando tu trabajo es hacer que las cosas funcionen bien...","publisher":{"@id":"https:\/\/maurobernal.com.ar\/blog\/#\/schema\/person\/09c4dbdfb59b20e015c703fd19713283"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/maurobernal.com.ar\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":["Person","Organization"],"@id":"https:\/\/maurobernal.com.ar\/blog\/#\/schema\/person\/09c4dbdfb59b20e015c703fd19713283","name":"Mauro Bernal","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/i0.wp.com\/maurobernal.com.ar\/blog\/wp-content\/uploads\/2023\/07\/logo-maurobernal.png?fit=1740%2C1740&ssl=1","url":"https:\/\/i0.wp.com\/maurobernal.com.ar\/blog\/wp-content\/uploads\/2023\/07\/logo-maurobernal.png?fit=1740%2C1740&ssl=1","contentUrl":"https:\/\/i0.wp.com\/maurobernal.com.ar\/blog\/wp-content\/uploads\/2023\/07\/logo-maurobernal.png?fit=1740%2C1740&ssl=1","width":1740,"height":1740,"caption":"Mauro Bernal"},"logo":{"@id":"https:\/\/i0.wp.com\/maurobernal.com.ar\/blog\/wp-content\/uploads\/2023\/07\/logo-maurobernal.png?fit=1740%2C1740&ssl=1"},"description":"Desarrollo de Sistemas en .Net, IT Callcenters, DBA de SQL Server, Mikrotik, Pentest y T\u00e9cnico consultor de Sistemas Bejerman","sameAs":["https:\/\/maurobernal.com.ar","https:\/\/x.com\/_maurobernal","https:\/\/youtube.com\/maurobernal"]}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/posts\/1177","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/comments?post=1177"}],"version-history":[{"count":4,"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/posts\/1177\/revisions"}],"predecessor-version":[{"id":1252,"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/posts\/1177\/revisions\/1252"}],"wp:attachment":[{"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/media?parent=1177"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/categories?post=1177"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/maurobernal.com.ar\/blog\/wp-json\/wp\/v2\/tags?post=1177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}