{"id":22097,"date":"2023-06-24T04:41:58","date_gmt":"2023-06-23T21:41:58","guid":{"rendered":"https:\/\/huongdanjava.com\/?p=22097"},"modified":"2023-06-24T04:41:58","modified_gmt":"2023-06-23T21:41:58","slug":"install-openfeature-flagd-provider-using-docker-compose","status":"publish","type":"post","link":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html","title":{"rendered":"Install OpenFeature flagd provider using Docker compose"},"content":{"rendered":"<p><a href=\"https:\/\/openfeature.dev\/\" target=\"_blank\" rel=\"noopener\">OpenFeature<\/a> is an open standard that makes it possible to implement the concept of feature flags, on or off features of an application. To use OpenFeature, we need to have a service running outside the application that acts as a provider so that we can control when to turn on and when to turn off a feature of the application. There are many providers that support OpenFeature, one of which is the open source flagd provider. In this tutorial, I will show you how to install this flagd provider using Docker Compose!<\/p>\n<p>First, to install the flagd provider using Docker Compose, we will need the Docker Image of the flagd provider. You can find the Docker images of flagd on the GitHub Container Registry here <a href=\"https:\/\/github.com\/open-feature\/flagd\/pkgs\/container\/flagd\" target=\"_blank\" rel=\"noopener\">https:\/\/github.com\/open-feature\/flagd\/pkgs\/container\/flagd<\/a>. Depending on your needs, you can choose the tag of the flagd provider accordingly. I will use the latest version.<\/p>\n<p>The content of the Docker Compose file to install the flagd provider will look like this:<\/p>\n<pre class=\"lang:yaml decode:true\">version: '3.9'\r\n\r\nservices:\r\n  flagd:\r\n    image: ghcr.io\/open-feature\/flagd:latest\r\n    container_name: 'flagd'\r\n    volumes:\r\n      - .\/flagd\/:\/etc\/flagd\/\r\n    tty: true\r\n    stdin_open: true\r\n    command: start --uri file:\/etc\/flagd\/flags.flagd.json\r\n    ports:\r\n      - 8013:8013<\/pre>\n<p>You need to map a directory outside the container with the directory \/etc\/flagd inside the container and define a configuration file about the feature flag so that the flagd provider can read and process, in the directory outside this container.<\/p>\n<p>When running a Docker Container from a Docker Image, the flagd provider will need to run the &#8220;start&#8221; command with a parameter pointing to the configuration file about the feature flag.<\/p>\n<p>By default, the flagd provider will run on port 8013, so you also need to expose this port to the outside so that applications can connect and work with the flagd provider!<\/p>\n<p>The result when I run the command &#8220;docker compose up&#8221; with the file docker-compose.yaml containing the above content is as follows:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-22093 aligncenter\" src=\"https:\/\/huongdanjava.com\/wp-content\/uploads\/2023\/06\/cai-dat-openfeature-flagd-provider-su-dung-docker-compose-1.png\" alt=\"\" width=\"700\" height=\"362\" \/><\/p>\n<p>So we have successfully installed the OpenFeature flagd provider, guys!<\/p>\n\n\n<div class=\"kk-star-ratings kksr-auto kksr-align-right kksr-valign-bottom\"\n    data-payload='{&quot;align&quot;:&quot;right&quot;,&quot;id&quot;:&quot;22097&quot;,&quot;slug&quot;:&quot;default&quot;,&quot;valign&quot;:&quot;bottom&quot;,&quot;ignore&quot;:&quot;&quot;,&quot;reference&quot;:&quot;auto&quot;,&quot;class&quot;:&quot;&quot;,&quot;count&quot;:&quot;0&quot;,&quot;legendonly&quot;:&quot;&quot;,&quot;readonly&quot;:&quot;&quot;,&quot;score&quot;:&quot;0&quot;,&quot;starsonly&quot;:&quot;&quot;,&quot;best&quot;:&quot;5&quot;,&quot;gap&quot;:&quot;4&quot;,&quot;greet&quot;:&quot;&quot;,&quot;legend&quot;:&quot;0\\\/5 - (0 votes)&quot;,&quot;size&quot;:&quot;24&quot;,&quot;title&quot;:&quot;Install OpenFeature flagd provider using Docker compose&quot;,&quot;width&quot;:&quot;0&quot;,&quot;_legend&quot;:&quot;{score}\\\/{best} - ({count} {votes})&quot;,&quot;font_factor&quot;:&quot;1.25&quot;}'>\n            \n<div class=\"kksr-stars\">\n    \n<div class=\"kksr-stars-inactive\">\n            <div class=\"kksr-star\" data-star=\"1\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"2\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"3\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"4\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"5\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n    \n<div class=\"kksr-stars-active\" style=\"width: 0px;\">\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n                \n\n<div class=\"kksr-legend\" style=\"font-size: 19.2px;\">\n            <span class=\"kksr-muted\"><\/span>\n    <\/div>\n    <\/div>\n","protected":false},"excerpt":{"rendered":"<p>OpenFeature is an open standard that makes it possible to implement the concept of feature flags, on or off features of an application. To use OpenFeature, we need to have a service running outside the application that acts as a provider so that we can&hellip; <a href=\"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":22094,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2354],"tags":[],"class_list":["post-22097","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-openfeature-en","clearfix"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Install OpenFeature flagd provider using Docker compose - Huong Dan Java<\/title>\n<meta name=\"description\" content=\"In this tutorial, I will guide you all on how to install the OpenFeature flagd provider using Docker compose.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Install OpenFeature flagd provider using Docker compose - Huong Dan Java\" \/>\n<meta property=\"og:description\" content=\"In this tutorial, I will guide you all on how to install the OpenFeature flagd provider using Docker compose.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html\" \/>\n<meta property=\"og:site_name\" content=\"Huong Dan Java\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/nhkhanh2406\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/nhkhanh2406\" \/>\n<meta property=\"article:published_time\" content=\"2023-06-23T21:41:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/huongdanjava.com\/wp-content\/uploads\/2023\/06\/openfeature.png\" \/>\n\t<meta property=\"og:image:width\" content=\"280\" \/>\n\t<meta property=\"og:image:height\" content=\"280\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Khanh Nguyen\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/KhanhNguyenJ\" \/>\n<meta name=\"twitter:site\" content=\"@KhanhNguyenJ\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Khanh Nguyen\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html\"},\"author\":{\"name\":\"Khanh Nguyen\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#\\\/schema\\\/person\\\/dc859d7f8cbea3b593e6738de9cbb82d\"},\"headline\":\"Install OpenFeature flagd provider using Docker compose\",\"datePublished\":\"2023-06-23T21:41:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html\"},\"wordCount\":311,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#\\\/schema\\\/person\\\/dc859d7f8cbea3b593e6738de9cbb82d\"},\"image\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2023\\\/06\\\/openfeature.png\",\"articleSection\":[\"OpenFeature\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html\",\"url\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html\",\"name\":\"Install OpenFeature flagd provider using Docker compose - Huong Dan Java\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2023\\\/06\\\/openfeature.png\",\"datePublished\":\"2023-06-23T21:41:58+00:00\",\"description\":\"In this tutorial, I will guide you all on how to install the OpenFeature flagd provider using Docker compose.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html#primaryimage\",\"url\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2023\\\/06\\\/openfeature.png\",\"contentUrl\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2023\\\/06\\\/openfeature.png\",\"width\":280,\"height\":280},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/install-openfeature-flagd-provider-using-docker-compose.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/huongdanjava.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Install OpenFeature flagd provider using Docker compose\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#website\",\"url\":\"https:\\\/\\\/huongdanjava.com\\\/\",\"name\":\"Huong Dan Java\",\"description\":\"Java development tutorials\",\"publisher\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#\\\/schema\\\/person\\\/dc859d7f8cbea3b593e6738de9cbb82d\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/huongdanjava.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#\\\/schema\\\/person\\\/dc859d7f8cbea3b593e6738de9cbb82d\",\"name\":\"Khanh Nguyen\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/07\\\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg\",\"url\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/07\\\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg\",\"contentUrl\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/07\\\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg\",\"width\":1267,\"height\":1517,\"caption\":\"Khanh Nguyen\"},\"logo\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/07\\\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg\"},\"description\":\"I love Java and everything related to Java.\",\"sameAs\":[\"https:\\\/\\\/huongdanjava.com\",\"https:\\\/\\\/www.facebook.com\\\/nhkhanh2406\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/KhanhNguyenJ\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Install OpenFeature flagd provider using Docker compose - Huong Dan Java","description":"In this tutorial, I will guide you all on how to install the OpenFeature flagd provider using Docker compose.","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:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html","og_locale":"en_US","og_type":"article","og_title":"Install OpenFeature flagd provider using Docker compose - Huong Dan Java","og_description":"In this tutorial, I will guide you all on how to install the OpenFeature flagd provider using Docker compose.","og_url":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html","og_site_name":"Huong Dan Java","article_publisher":"https:\/\/www.facebook.com\/nhkhanh2406","article_author":"https:\/\/www.facebook.com\/nhkhanh2406","article_published_time":"2023-06-23T21:41:58+00:00","og_image":[{"width":280,"height":280,"url":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2023\/06\/openfeature.png","type":"image\/png"}],"author":"Khanh Nguyen","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/KhanhNguyenJ","twitter_site":"@KhanhNguyenJ","twitter_misc":{"Written by":"Khanh Nguyen","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html#article","isPartOf":{"@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html"},"author":{"name":"Khanh Nguyen","@id":"https:\/\/huongdanjava.com\/#\/schema\/person\/dc859d7f8cbea3b593e6738de9cbb82d"},"headline":"Install OpenFeature flagd provider using Docker compose","datePublished":"2023-06-23T21:41:58+00:00","mainEntityOfPage":{"@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html"},"wordCount":311,"commentCount":0,"publisher":{"@id":"https:\/\/huongdanjava.com\/#\/schema\/person\/dc859d7f8cbea3b593e6738de9cbb82d"},"image":{"@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html#primaryimage"},"thumbnailUrl":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2023\/06\/openfeature.png","articleSection":["OpenFeature"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html","url":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html","name":"Install OpenFeature flagd provider using Docker compose - Huong Dan Java","isPartOf":{"@id":"https:\/\/huongdanjava.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html#primaryimage"},"image":{"@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html#primaryimage"},"thumbnailUrl":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2023\/06\/openfeature.png","datePublished":"2023-06-23T21:41:58+00:00","description":"In this tutorial, I will guide you all on how to install the OpenFeature flagd provider using Docker compose.","breadcrumb":{"@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html#primaryimage","url":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2023\/06\/openfeature.png","contentUrl":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2023\/06\/openfeature.png","width":280,"height":280},{"@type":"BreadcrumbList","@id":"https:\/\/huongdanjava.com\/install-openfeature-flagd-provider-using-docker-compose.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/huongdanjava.com\/"},{"@type":"ListItem","position":2,"name":"Install OpenFeature flagd provider using Docker compose"}]},{"@type":"WebSite","@id":"https:\/\/huongdanjava.com\/#website","url":"https:\/\/huongdanjava.com\/","name":"Huong Dan Java","description":"Java development tutorials","publisher":{"@id":"https:\/\/huongdanjava.com\/#\/schema\/person\/dc859d7f8cbea3b593e6738de9cbb82d"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/huongdanjava.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/huongdanjava.com\/#\/schema\/person\/dc859d7f8cbea3b593e6738de9cbb82d","name":"Khanh Nguyen","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/07\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg","url":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/07\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg","contentUrl":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/07\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg","width":1267,"height":1517,"caption":"Khanh Nguyen"},"logo":{"@id":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/07\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg"},"description":"I love Java and everything related to Java.","sameAs":["https:\/\/huongdanjava.com","https:\/\/www.facebook.com\/nhkhanh2406","https:\/\/x.com\/https:\/\/twitter.com\/KhanhNguyenJ"]}]}},"_links":{"self":[{"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/posts\/22097","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/comments?post=22097"}],"version-history":[{"count":2,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/posts\/22097\/revisions"}],"predecessor-version":[{"id":22100,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/posts\/22097\/revisions\/22100"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/media\/22094"}],"wp:attachment":[{"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/media?parent=22097"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/categories?post=22097"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/tags?post=22097"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}