{"id":9541,"date":"2015-05-14T11:30:54","date_gmt":"2015-05-14T02:30:54","guid":{"rendered":"http:\/\/www.creationline.com\/?p=9541"},"modified":"2015-05-13T16:22:12","modified_gmt":"2015-05-13T07:22:12","slug":"%e5%92%8c%e8%a8%b3-%e3%83%97%e3%83%a9%e3%82%a4%e3%83%99%e3%83%bc%e3%83%88supermarket%e3%82%b5%e3%83%bc%e3%83%90%e3%82%92%e7%ab%8b%e3%81%a6%e3%81%a6%e3%81%bf%e3%82%88%e3%81%86-getchef","status":"publish","type":"post","link":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/chef\/9541","title":{"rendered":"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef"},"content":{"rendered":"<p>\u672c\u7a3f\u306f <a href=\"https:\/\/www.chef.io\/blog\/2015\/04\/21\/setting-up-your-private-supermarket-server\/\">Setting Up Your Private Supermarket Server<\/a> (2015\/04\/21) \u306e\u548c\u8a33\u3067\u3059\u3002<\/p>\n<p>\u672c\u7a3f(\u8a33\u6ce8:\u539f\u6587)\u306f\u4ee5\u524d\u306e\u6295\u7a3f\u3067\u3042\u308b <a href=\"https:\/\/www.chef.io\/blog\/2014\/08\/29\/getting-started-with-oc-id-and-supermarket\/\">Getting started with oc-id and Supermarket<\/a> (2014\/08\/29) \u306e\u66f4\u65b0\u7248\u3067\u3059\u3002<\/p>\n<p>Chef Server 12\u306f\u3001<a href=\"https:\/\/id.chef.io\/\">id.chef.io<\/a>\u3067\u4f7f\u3063\u3066\u3044\u308bOAuth2\u30b5\u30fc\u30d3\u30b9\u3067\u3042\u308b\u3001<a href=\"https:\/\/github.com\/chef\/oc-id\">oc-id<\/a>\u3092\u540c\u68b1\u3057\u3066\u3044\u307e\u3059\u3002Chef Server 12\u306b\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9\u3057\u305f\u5f8c\u3001Chef\u30e6\u30fc\u30b6\u306f\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u306e\u80cc\u5f8c\u3067\u72ec\u81ea\u306eSupermarket\u30b5\u30fc\u30d3\u30b9\u3092\u5b9f\u884c\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<h2>Chef Server\u306boc-id\u3092\u8a2d\u5b9a\u3059\u308b<\/h2>\n<p><em>\u4ee5\u964d\u306e\u624b\u9806\u3092\u884c\u3046\u306b\u306f\u3001Chef Server\u306bSSH\u7d4c\u7531\u3067\u30ed\u30b0\u30a4\u30f3\u3057\u3001\u7ba1\u7406\u8005\u6a29\u9650\u306b\u306a\u3089\u306a\u3051\u308c\u3070\u3044\u3051\u307e\u305b\u3093\u3002<\/em><\/p>\n<ol>\n<li>\n\t<strong>\/etc\/opscode\/chef-server.rb<\/strong>\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b\u6b21\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002<br \/>\n<code lang=\"ruby\"><br \/>\noc_id['applications'] = {<br \/>\n  'supermarket' => {<br \/>\n    'redirect_uri' => 'https:\/\/supermarket.mycompany.com\/auth\/chef_oauth2\/callback'<br \/>\n  }<br \/>\n}<br \/>\n<\/code>\n\t<\/li>\n<li><strong>chef-server-ctl reconfigure<\/strong>\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/li>\n<li>\n\treconfigure\u306e\u5f8c\u3001<strong>\/etc\/opscode\/oc-id-applications\/supermarket.json<\/strong>\u306bOAuth2\u30c7\u30fc\u30bf\u304c\u66f8\u304d\u51fa\u3055\u308c\u307e\u3059\u3002<br \/>\n<code lang=\"javascript\"><br \/>\n{<br \/>\n  \"name\": \"supermarket\",<br \/>\n  \"uid\": \"0bad0f2eb04e935718e081fb71e3b7bb47dc3681c81acb9968a8e1e32451d08b\",<br \/>\n  \"secret\": \"17cf1141cc971a10ce307611beda7f4dc6633bb54f1bc98d9f9ca76b9b127879\",<br \/>\n  \"redirect_uri\": \"https:\/\/supermarket.mycompany.com\/auth\/chef_oauth2\/callback\"<br \/>\n}<br \/>\n<\/code>\n\t<\/li>\n<\/ol>\n<p>\u3053\u306e\u30d5\u30a1\u30a4\u30eb\u306e<strong>uid<\/strong>\u3068<strong>secret<\/strong>\u306e\u5024\u304c\u6b21\u306e\u6bb5\u968e\u3067\u5fc5\u8981\u306b\u306a\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p><em>chef-server.rb\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b\u591a\u6570\u306eoc-id\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0\u3059\u308b\u3068\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3054\u3068\u306b1\u30d5\u30a1\u30a4\u30eb\u305a\u3064OAuth2\u30c7\u30fc\u30bf\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/em><\/p>\n<h2>Test Kitchen\u5185\u3067\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u5b9f\u884c\u3059\u308b<\/h2>\n<p><em>\u6ce8\u610f: \u3053\u3053\u3067\u306f\u30bd\u30fc\u30b9\u304b\u3089Supermarket\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u306e\u3067\u3001\u30b3\u30df\u30e5\u30cb\u30c6\u30a3\u306eSupermarket Cookbook\u3092\u4f7f\u3044\u307e\u305b\u3093\u3002\u4ee3\u308f\u308a\u306bOmnibus\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/em><\/p>\n<p>\u300c\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3068\u3057\u3066\u306e\u30b3\u30fc\u30c9\u300d\u306e\u7cbe\u795e\u306b\u5247\u308a\u3001\u30c6\u30b9\u30c8\u7528Supermarket Omnibus\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u305f\u3081\u306e\u5358\u7d14\u306aCookbook\u3068test-kitchen\u8a2d\u5b9a\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\u3053\u308c\u3089\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u306f <a href=\"https:\/\/packagecloud.io\/chef\/stable\">https:\/\/packagecloud.io\/chef\/stable<\/a> \u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u307e\u3059\u3002<\/p>\n<ol>\n<li>\n\t<a href=\"https:\/\/github.com\/irvingpop\/supermarket-omnibus-cookbook\">https:\/\/github.com\/irvingpop\/supermarket-omnibus-cookbook<\/a>\u304b\u3089\u30b3\u30d4\u30fc\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u307e\u3059\u3002<br \/>\n<code lang=\"bash\"><br \/>\ngit clone https:\/\/github.com\/irvingpop\/supermarket-omnibus-cookbook.git supermarket-omnibus-cookbook<br \/>\ncd supermarket-omnibus-cookbook<br \/>\n<\/code>\n\t<\/li>\n<li>\n\t<strong>.kitchen.local.yml<\/strong>\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u3001\u5148\u306e\u624b\u9806\u3067\u53d6\u5f97\u3057\u305foc-id attribute\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br \/>\n<code lang=\"yaml\"><br \/>\n---<br \/>\n suites:<br \/>\n   - name: default<br \/>\n     run_list:<br \/>\n       - recipe[supermarket-omnibus-cookbook::default]<br \/>\n     attributes:<br \/>\n       supermarket_omnibus:<br \/>\n         chef_server_url: https:\/\/chefserver.mycompany.com<br \/>\n         chef_oauth2_url: https:\/\/chefserver.mycompany.com<br \/>\n         chef_oauth2_app_id: 0bad0f2eb04e935718e081fb71e3b7bb47dc3681c81acb9968a8e1e32451d08b<br \/>\n         chef_oauth2_secret: 17cf1141cc971a10ce307611beda7f4dc6633bb54f1bc98d9f9ca76b9b127879<br \/>\n         chef_oauth2_verify_ssl: false<br \/>\n<\/code><br \/>\n        (<strong>\u8a33\u6ce8<\/strong>: \u300cchef_oauth2_url\u300d\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u53c2\u8003: <a href=\"https:\/\/github.com\/chef\/supermarket\/issues\/911\">\"Sign in with your chef account\" redirects to https:\/\/id.opscode.com\/... instead of local Chef Server<\/a>)\n\t<\/li>\n<li>\n\t\/etc\/hosts \u30d5\u30a1\u30a4\u30eb\u306b\u30de\u30b7\u30f3\u540d\u3092\u81ea\u52d5\u7684\u306b\u8ffd\u52a0\u3059\u308b<strong>vagrant-hostsupdater<\/strong>\u30d7\u30e9\u30b0\u30a4\u30f3\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002\u30db\u30b9\u30c8\u540d\u3092\u6c17\u306b\u3059\u308boauth2\u306b\u3068\u3063\u3066\u91cd\u8981\u3067\u3059\u3002oc-id\u8a2d\u5b9a\u306e<strong>redirect_uri<\/strong>\u306b\u8a2d\u5b9a\u3059\u308b\u5024\u306f\u3053\u306e\u540d\u524d\u3092\u53cd\u6620\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n<code lang=\"bash\"><br \/>\nvagrant plugin install vagrant-hostsupdater<br \/>\n<\/code>\n\t<\/li>\n<li>\n\tSupermarket\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u8d77\u52d5\u3057\u3066\u30c6\u30b9\u30c8\u3057\u307e\u3059\u3002<br \/>\n<code lang=\"bash\"><br \/>\nkitchen converge default-centos-66 && kitchen verify default-centos-66<br \/>\n<\/code>\n\t<\/li>\n<li>Supermarket\u30b5\u30fc\u30d0 https:\/\/default-centos-66 \u306bChef\u30e6\u30fc\u30b6\u3068\u3057\u3066\u30ed\u30b0\u30a4\u30f3\u3057\u307e\u3059\u3002<\/li>\n<li>\u30ed\u30b0\u30a4\u30f3\u3067\u304d\u305f\u3089\u3001\u6b21\u306e\u3088\u3046\u306a\u753b\u9762\u306b\u306a\u308a\u307e\u3059\u3002<br \/>\n\t<!-- oc-id5-1024x343.png \/\/--><a href=\"\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png\"><img loading=\"lazy\" decoding=\"async\" src=\"\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png\" alt=\"oc-id5-1024x343\" width=\"1024\" height=\"343\" class=\"alignnone size-full wp-image-9716\" srcset=\"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png 1024w, https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343-360x121.png 360w, https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343-768x257.png 768w, https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343-225x75.png 225w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a>\n\t<\/li>\n<\/ol>\n<h2>\u6700\u521d\u306eCookbook\u3092Supermarket\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b<\/h2>\n<ol>\n<li>\n\t<a href=\"https:\/\/github.com\/chef\/knife-supermarket\">knife-supermarket<\/a> Gem\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002ChefDK\u306a\u3089\u6b21\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<br \/>\n<code lang=\"bash\"><br \/>\nchef gem install knife-supermarket<br \/>\n<\/code>\n\t<\/li>\n<li>\n\t<strong>knife.rb<\/strong>\u30d5\u30a1\u30a4\u30eb\u306b\u3001Supermarket\u30b5\u30fc\u30d0\u306e\u8a2d\u5b9a\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002<br \/>\n<code lang=\"ruby\"><br \/>\nknife[:supermarket_site] = 'https:\/\/default-centos-66'<br \/>\n<\/code>\n\t<\/li>\n<li>\n\tSSL\u30a8\u30e9\u30fc\u3092\u89e3\u6c7a\u3059\u308b\u305f\u3081\u3001Supermarket\u30b5\u30fc\u30d0\u306eSSL\u8a3c\u660e\u66f8\u3092\u53d6\u5f97\u3057\u3066\u691c\u8a3c\u3057\u307e\u3059\u3002<br \/>\n<code lang=\"bash\"><br \/>\nknife ssl fetch https:\/\/default-centos-66<br \/>\nknife ssl check https:\/\/default-centos-66<br \/>\n<\/code>\n\t<\/li>\n<li>\n\tCookbook\u3092Supermarket\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u307e\u3059\u3002<br \/>\n<code lang=\"bash\"><br \/>\nknife supermarket share mycookbook \"Other\"<br \/>\n<\/code>\n\t<\/li>\n<\/ol>\n<h2>\u672c\u756a\u74b0\u5883\u3067Supermarket\u3092\u5b9f\u884c\u3059\u308b<\/h2>\n<p>Supermarket\u306f\u307e\u3060\u521d\u671f\u6bb5\u968e\u306b\u3042\u308b\u306e\u3067\u3001Chef\u793e\u516c\u5f0f\u30b5\u30dd\u30fc\u30c8\u3084HA\u3001\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30c4\u30fc\u30eb\u306a\u3069\u3092\u6301\u3063\u3066\u3044\u307e\u305b\u3093\u3002\u305d\u308c\u3067\u3082Chef\u793e\u306e\u4e3b\u8981\u306a\u9867\u5ba2\u306e\u3044\u304f\u3064\u304b\u306f\u3001\u81ea\u5df1\u8cac\u4efb\u306b\u304a\u3044\u3066\u3001\u672c\u756a\u74b0\u5883\u3067Supermarket\u3092\u5b9f\u884c\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>\u901a\u5e38\u3001\u5fc5\u8981\u306a\u3060\u3051\u7c21\u5358\u306b\u5897\u3084\u305b\u308b\u3088\u3046\u306a\u3001\u5c0f\u3055\u306aVM\u304b\u3089\u59cb\u3081\u308b\u3053\u3068\u3092\u63a8\u5968\u3057\u3066\u3044\u307e\u3059\u3002\u5225\u306e\u30c7\u30a3\u30b9\u30af\u306b\u7f6e\u3044\u305f<strong>\/var\/opt\/supermarket<\/strong>\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3084\u3001\u62e1\u5f35\u53ef\u80fd\u306aLVM\u306b\u7f6e\u3044\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n<h2>Cookbook Attribute\u3092\u30e9\u30c3\u30d7\u3059\u308b<\/h2>\n<p>Supermarket\u3092\u30c7\u30d7\u30ed\u30a4\u3059\u308bRecipe\u306b\u5bfe\u3057\u3066\u3001Role\u3068\u4f7f\u3046\u30e9\u30c3\u30d1\u30fcCookbook\u306e\u4f7f\u7528\u3092\u63a8\u5968\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<p><strong>node['supermarket_omnibus']<\/strong>\u4ee5\u4e0b\u306e\u3059\u3079\u3066\u306e\u30ad\u30fc\u306f<strong>\/etc\/supermarket\/supermarket.json<\/strong>\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002<a href=\"https:\/\/github.com\/chef\/omnibus-supermarket\/blob\/master\/cookbooks\/omnibus-supermarket\/attributes\/default.rb\">supermarket Omnibus\u30d1\u30c3\u30b1\u30fc\u30b8<\/a>\u3067\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u3092\u4e0a\u66f8\u304d\u3059\u308b\u3088\u3046\u306b\u8ffd\u52a0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\ndefault['supermarket_omnibus']['chef_server_url'] = 'https:\/\/chefserver.mycompany.com'<br \/>\ndefault['supermarket_omnibus']['chef_oauth2_app_id'] = '14dfcf186221781cff51eedd5ac1616'<br \/>\ndefault['supermarket_omnibus']['chef_oauth2_secret'] = 'a49402219627cfa6318d58b13e90aca'<br \/>\ndefault['supermarket_omnibus']['chef_oauth2_verify_ssl'] = false<br \/>\n<\/code><\/p>\n<h2>\u30b7\u30b9\u30c6\u30e0\u306e\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0<\/h2>\n<p>Supermarket\u306f\u3001PostgreSQL\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306eRuby on Rails\u30a2\u30d7\u30ea\u3067\u3001\u4e00\u822c\u7684\u306aRoR\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u30eb\u30fc\u30eb\u3092\u9069\u7528\u3057\u3066\u3044\u307e\u3059\u3002\u3082\u3057Supermarket\u3092\u30b9\u30b1\u30fc\u30eb\u30a2\u30a6\u30c8\u3084HA\u30e2\u30fc\u30c9\u3067\u52d5\u4f5c\u3055\u305b\u305f\u3044\u306a\u3089\u3001\u72ec\u81ea\u306e\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u4f5c\u3063\u3066\u884c\u3046\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<ul>\n<li><strong>\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9<\/strong>: \u5225\u306ePostgreSQL 9.3\u4ee5\u4e0a\u306e\u30b5\u30fc\u30d0(\u307e\u305f\u306fHA\u30da\u30a2)\u3092\u4f5c\u308a\u307e\u3059\u3002<strong>pgpsql<\/strong>\u3068<strong>pg_trgm<\/strong>\u306ePostgreSQL\u30a8\u30af\u30b9\u30c6\u30f3\u30b7\u30e7\u30f3\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u8aad\u307f\u8fbc\u307e\u306a\u3051\u308c\u3070\u306a\u3089\u306a\u3044\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/li>\n<li><strong>Cookbook\u30b9\u30c8\u30ec\u30fc\u30b8<\/strong>: Cookbook tar\u30dc\u30fc\u30eb\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f<strong>\/var\/opt\/supermarket\/data<\/strong>\u306b\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002\u3053\u308c\u3092Amazon S3 (\u63a8\u5968)\u304b<a href=\"http:\/\/stackoverflow.com\/questions\/10574909\/is-there-an-open-source-equivalent-to-amazon-s3\">S3\u4e92\u63db\u30b5\u30fc\u30d3\u30b9<\/a>\u306b\u5909\u66f4\u3067\u304d\u307e\u3059\u3002\u3082\u3057\u9078\u629e\u80a2\u306b\u306a\u304f\u3066\u3082\u3001\u4f8b\u3048\u3070NFS\u306e\u3088\u3046\u306a\u5171\u6709\u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u5bfe\u3059\u308b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3078\u30b7\u30f3\u30dc\u30ea\u30c3\u30af\u30ea\u30f3\u30af\u3092\u5f35\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u304c\u3001\u7af6\u5408\u72b6\u614b\u306b\u95a2\u3059\u308b\u5b8c\u5168\u306a\u30c6\u30b9\u30c8\u3092\u884c\u3063\u3066\u3044\u307e\u305b\u3093\u3002<\/li>\n<li>(\u30aa\u30d7\u30b7\u30e7\u30f3)<strong>\u30ad\u30e3\u30c3\u30b7\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9<\/strong>: Supermarket\u306f\u30ad\u30e3\u30c3\u30b7\u30f3\u30b0\u30b5\u30fc\u30d3\u30b9\u306bRedis\u3092\u4f7f\u3063\u3066\u3044\u307e\u3059\u3002Supermarket\u30a2\u30d7\u30ea\u30b5\u30fc\u30d0\u3054\u3068\u306b1\u3064\u306eRedis\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u5b89\u5168\u306b\u5b9f\u884c\u3067\u304d\u307e\u3059\u3057\u3001Redis 2.8\u4ee5\u4e0a\u306e\u30b5\u30fc\u30d0\u3084HA\u30da\u30a2\u3067\u5b9f\u884c\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ul>\n<h2>\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u3068FAQ<\/h2>\n<h3>\u6b63\u3057\u304f\u306a\u3044\u30ea\u30c0\u30a4\u30ec\u30af\u30c8URL<\/h3>\n<p>oc-id\u306b\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u30ea\u30c0\u30a4\u30ec\u30af\u30c8URL\u306f\u3001Supermarket\u30b5\u30fc\u30d0\u306e\u30db\u30b9\u30c8\u540d\u3068\u4e00\u81f4<strong>\u3057\u306a\u3051\u308c\u3070\u3044\u3051\u307e\u305b\u3093<\/strong>\u3002\u307e\u305f\u3001URI\u3092\u6b63\u3057\u304f(\/auth\/chef_oauth2\/callback)\u53d6\u5f97\u3067\u304d\u306a\u3051\u308c\u3070\u3044\u3051\u307e\u305b\u3093\u3002\u3082\u3057\u305d\u3046\u306a\u3063\u3066\u3044\u306a\u3051\u308c\u3070\u3001\u6b21\u306e\u3088\u3046\u306a\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u53d7\u3051\u53d6\u308a\u307e\u3059\u3002<\/p>\n<p><code lang=\"bash\"><br \/>\nThe redirect uri included is not valid.<br \/>\n<\/code><\/p>\n<h3>Supermarket\u30b5\u30fc\u30d0\u304coc-id\u306b\u5230\u9054\u3067\u304d\u305a\u3001\u30ed\u30b0\u30a4\u30f3\u4e2d\u306b500\u30a8\u30e9\u30fc\u3092\u6295\u3052\u308b<\/h3>\n<p>Supermarket\u30b5\u30fc\u30d0\u306f\u3001OAuth2\u30cd\u30b4\u30b7\u30a8\u30fc\u30b7\u30e7\u30f3\u3092\u884c\u3063\u3066\u3044\u308b\u6700\u4e2d\u3001https\u7d4c\u7531\u3067\u6307\u5b9a\u3057\u305f<strong>chef_server_url<\/strong>\u306b\u5230\u9054\u3067\u304d\u306a\u3051\u308c\u3070\u3044\u3051\u307e\u305b\u3093\u3002\u540d\u524d\u89e3\u6c7a\u3084\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u30eb\u30fc\u30eb\u306b\u3088\u308b\u3001\u3082\u3063\u3068\u3082\u3088\u304f\u3042\u308b\u554f\u984c\u3067\u3059\u3002<\/p>\n<h3>Supermarket\u306e\u30b3\u30fc\u30c9\u306f\u3069\u3053\u306b\u3042\u308a\u307e\u3059\u304b\uff1f<\/h3>\n<ul>\n<li>\n\t\tSupermarket\u306erails\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f<a href=\"https:\/\/github.com\/chef\/supermarket\">\u3053\u3061\u3089<\/a>\u3067\u3059\u3002<\/p>\n<ul>\n<li>\u3059\u3079\u3066\u306eSupermarket\u306e\u554f\u984c\u306f<a href=\"https:\/\/github.com\/chef\/supermarket\/issues\">\u3053\u3061\u3089<\/a>\u306b\u5831\u544a\u3055\u308c\u307e\u3059\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\n\t\tSupermarket\u3092Omnibus\u30d1\u30c3\u30b1\u30fc\u30b8\u306b\u30d3\u30eb\u30c9\u3059\u308b\u305f\u3081\u306e\u30b3\u30fc\u30c9\u306f<a href=\"https:\/\/github.com\/chef\/omnibus-supermarket\">\u3053\u3061\u3089<\/a>\u3067\u3059\u3002<\/p>\n<ul>\n<li><strong>supermarket-ctl reconfigure<\/strong>\u306e\u5b9f\u884c\u4e2d\u306b\u4f7f\u3046Cookbook\u306f<a href=\"https:\/\/github.com\/chef\/omnibus-supermarket\/tree\/master\/cookbooks\/omnibus-supermarket\">\u3053\u3061\u3089<\/a>\u3067\u3059\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/chef\/omnibus-supermarket#kitchen-based-build-environment\">\u3053\u3061\u3089<\/a>\u306b\u5f93\u3063\u3066\u3001\u72ec\u81ea\u306eOmnibus\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30d3\u30eb\u30c9\u3067\u304d\u307e\u3059\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>rails\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30c7\u30d0\u30b0\u30ed\u30b0\u3092\u6709\u52b9\u306b\u3059\u308b\u306b\u306f\u3069\u3046\u3059\u308c\u3070\u3044\u3044\u3067\u3059\u304b\uff1f<\/h3>\n<p>rails\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u8a18\u9332\u3055\u308c\u306a\u3044\u3053\u3068\u306fSupermarket Omnibus\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u65e2\u77e5\u306e\u554f\u984c\u3067\u3059\u3002\u4fee\u6b63\u3059\u308b\u306b\u306f\u3001\u73fe\u6642\u70b9\u3067\u306f\u624b\u52d5\u64cd\u4f5c\u304c\u5fc5\u8981\u3067\u3059\u3002Supermarket\u30b5\u30fc\u30d0\u306e<strong>\/opt\/supermarket\/embedded\/service\/supermarket\/config\/environments\/production.rb<\/strong>\u30d5\u30a1\u30a4\u30eb\u306e46\u884c\u76ee\u306e\u300c<strong>config.log_level = :warn<\/strong>\u300d\u3092\u6b21\u306e\u3088\u3046\u306b\u4fee\u6b63\u3057\u307e\u3059\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\nconfig.logger = Logger.new('\/var\/log\/supermarket\/rails\/rails.log')<br \/>\nconfig.logger.level = 'DEBUG'<br \/>\nconfig.log_level = :debug<br \/>\n<\/code><\/p>\n<p>\u305d\u3057\u3066<strong>supermarket-ctl restart rails<\/strong>\u3092\u5b9f\u884c\u3057\u3066rails\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3057\u307e\u3059\u3002<\/p>\n<h3>\u30d7\u30ed\u30ad\u30b7\u306e\u80cc\u5f8c\u306b\u3044\u308b\u306e\u3067\u3001packagecloud\u3078\u306e\u63a5\u7d9a\u304c\u5931\u6557\u3059\u308b<\/h3>\n<p>\u5fc3\u914d\u3044\u308a\u307e\u305b\u3093\uff01 <strong>.kitchenl.local.yml<\/strong>\u30d5\u30a1\u30a4\u30eb\u306b\u6b21\u306e\u3088\u3046\u306b\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/p>\n<p><code lang=\"yaml\"><br \/>\nprovisioner:<br \/>\n  name: chef_zero<br \/>\n  solo_rb:<br \/>\n    http_proxy: http:\/\/192.168.1.1<br \/>\n    https_proxy: http:\/\/192.168.2.2<br \/>\n<\/code><\/p>\n<h3>Chef Omnibus Client\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u6bce\u56de\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u30fb\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u306a\u3051\u308c\u3070\u3044\u3051\u306a\u3044\u306e\u3067\u3001Test Kitchen\u304c\u9045\u3044<\/h3>\n<p>\u9ad8\u901f\u5316\u306e\u305f\u3081\u306e\u30d2\u30f3\u30c8\u3067\u3059\u3002<\/p>\n<ul>\n<li>\n\t<strong>.kitchenl.local.yml<\/strong>\u30d5\u30a1\u30a4\u30eb\u306b\u6b21\u3092\u8ffd\u52a0\u3057\u3066\u3001test-kitchen\u306bOmnibus\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9\u3092\u30ad\u30e3\u30c3\u30b7\u30e5\u3059\u308b\u3088\u3046\u306b\u4f1d\u3048\u307e\u3059\u3002<br \/>\n<code lang=\"yaml\"><br \/>\nprovisioner:<br \/>\n    name: chef_zero<br \/>\n    chef_omnibus_install_options: -d \/tmp\/vagrant-cache\/vagrant_omnibus<br \/>\n<\/code>\n\t<\/li>\n<li>vagrant-cachier\u30d7\u30e9\u30b0\u30a4\u30f3\u3092\u4f7f\u3063\u3066\u3001packagecloud\u306e\u3088\u3046\u306byum repo\u3092\u30ad\u30e3\u30c3\u30b7\u30e5\u3057\u307e\u3059\u3002\u307e\u305a<strong>vagrant plugin install vagrant-cachier<\/strong>\u3092\u5b9f\u884c\u3057\u3001\u6b21\u306e\u3088\u3046\u306b<strong>$VAGRANT_HOME\/Vagrantfile<\/strong>\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<br \/>\n<code lang=\"ruby\"><br \/>\nVagrant.configure(\"2\") do |config|<br \/>\n  config.vm.box = 'some-box'<br \/>\n  if Vagrant.has_plugin?(\"vagrant-cachier\")<br \/>\n    config.cache.scope = :box<br \/>\n    config.cache.enable :chef<br \/>\n    config.cache.enable :apt<br \/>\n    config.cache.enable :yum<br \/>\n    config.cache.enable :gem<br \/>\n  end<br \/>\nend<br \/>\n<\/code>\n\t<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u672c\u7a3f\u306f Setting Up Your Private Supermarket Server (2015\/04\/21) \u306e\u548c\u8a33\u3067\u3059\u3002 \u672c\u7a3f(\u8a33\u6ce8:\u539f\u6587)\u306f\u4ee5\u524d\u306e\u6295\u7a3f\u3067\u3042\u308b Getting started with oc- [&#8230;]<\/p>\n","protected":false},"author":2,"featured_media":9716,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[36],"tags":[],"class_list":["post-9541","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-chef"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3<\/title>\n<meta name=\"description\" content=\"Chef |\u672c\u7a3f\u306f Setting Up Your Private Supermarket Server (2015\/04\/21) \u306e\u548c\u8a33\u3067\u3059\u3002\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.creationline.com\/tech-blog\/9541\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\" \/>\n<meta property=\"og:description\" content=\"Chef |\u672c\u7a3f\u306f Setting Up Your Private Supermarket Server (2015\/04\/21) \u306e\u548c\u8a33\u3067\u3059\u3002\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.creationline.com\/tech-blog\/9541\" \/>\n<meta property=\"og:site_name\" content=\"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/creationline\" \/>\n<meta property=\"article:published_time\" content=\"2015-05-14T02:30:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"343\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Daisuke Higuchi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@creationline\" \/>\n<meta name=\"twitter:site\" content=\"@creationline\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daisuke Higuchi\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"3\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541\"},\"author\":{\"name\":\"Daisuke Higuchi\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\"},\"headline\":\"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef\",\"datePublished\":\"2015-05-14T02:30:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541\"},\"wordCount\":253,\"image\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2015\\\/04\\\/oc-id5-1024x343.png\",\"articleSection\":[\"Chef\"],\"inLanguage\":\"ja\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541\",\"name\":\"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2015\\\/04\\\/oc-id5-1024x343.png\",\"datePublished\":\"2015-05-14T02:30:54+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\"},\"description\":\"Chef |\u672c\u7a3f\u306f Setting Up Your Private Supermarket Server (2015\\\/04\\\/21) \u306e\u548c\u8a33\u3067\u3059\u3002\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541#breadcrumb\"},\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541#primaryimage\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2015\\\/04\\\/oc-id5-1024x343.png\",\"contentUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2015\\\/04\\\/oc-id5-1024x343.png\",\"width\":1024,\"height\":343},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/9541#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"HOME\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Chef\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/chef\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#website\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/\",\"name\":\"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\",\"description\":\"\u30a2\u30b8\u30e3\u30a4\u30eb\uff06DevOps\u3001\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6\u3001AI\uff06LLM\u306e\u5148\u7aef\u6280\u8853\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ja\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\",\"name\":\"Daisuke Higuchi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"contentUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"caption\":\"Daisuke Higuchi\"},\"description\":\"Chef\u30fbDocker\u30fbMirantis\u88fd\u54c1\u306a\u3069\u306e\u6280\u8853\u8981\u7d20\u306b\u52a0\u3048\u3066\u3001\u4f1a\u8b70\u306e\u9032\u3081\u65b9\u30fb\u6587\u7ae0\u306e\u66f8\u304d\u65b9\u306a\u3069\u306e\u696d\u52d9\u6539\u5584\u306b\u3082\u53d6\u308a\u7d44\u3093\u3067\u3044\u307e\u3059\u3002\u300cChef\u6d3b\u7528\u30ac\u30a4\u30c9\u300d\u5171\u8457\u306e\u307b\u304b\u3001Debian Official Developer\u3082\u3084\u3063\u3066\u3044\u307e\u3059\u3002\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/author\\\/higuchi\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","description":"Chef |\u672c\u7a3f\u306f Setting Up Your Private Supermarket Server (2015\/04\/21) \u306e\u548c\u8a33\u3067\u3059\u3002","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:\/\/www.creationline.com\/tech-blog\/9541","og_locale":"ja_JP","og_type":"article","og_title":"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","og_description":"Chef |\u672c\u7a3f\u306f Setting Up Your Private Supermarket Server (2015\/04\/21) \u306e\u548c\u8a33\u3067\u3059\u3002","og_url":"https:\/\/www.creationline.com\/tech-blog\/9541","og_site_name":"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","article_publisher":"https:\/\/www.facebook.com\/creationline","article_published_time":"2015-05-14T02:30:54+00:00","og_image":[{"width":1024,"height":343,"url":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png","type":"image\/png"}],"author":"Daisuke Higuchi","twitter_card":"summary_large_image","twitter_creator":"@creationline","twitter_site":"@creationline","twitter_misc":{"\u57f7\u7b46\u8005":"Daisuke Higuchi","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"3\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.creationline.com\/tech-blog\/9541#article","isPartOf":{"@id":"https:\/\/www.creationline.com\/tech-blog\/9541"},"author":{"name":"Daisuke Higuchi","@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206"},"headline":"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef","datePublished":"2015-05-14T02:30:54+00:00","mainEntityOfPage":{"@id":"https:\/\/www.creationline.com\/tech-blog\/9541"},"wordCount":253,"image":{"@id":"https:\/\/www.creationline.com\/tech-blog\/9541#primaryimage"},"thumbnailUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png","articleSection":["Chef"],"inLanguage":"ja"},{"@type":"WebPage","@id":"https:\/\/www.creationline.com\/tech-blog\/9541","url":"https:\/\/www.creationline.com\/tech-blog\/9541","name":"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","isPartOf":{"@id":"https:\/\/www.creationline.com\/tech-blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.creationline.com\/tech-blog\/9541#primaryimage"},"image":{"@id":"https:\/\/www.creationline.com\/tech-blog\/9541#primaryimage"},"thumbnailUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png","datePublished":"2015-05-14T02:30:54+00:00","author":{"@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206"},"description":"Chef |\u672c\u7a3f\u306f Setting Up Your Private Supermarket Server (2015\/04\/21) \u306e\u548c\u8a33\u3067\u3059\u3002","breadcrumb":{"@id":"https:\/\/www.creationline.com\/tech-blog\/9541#breadcrumb"},"inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.creationline.com\/tech-blog\/9541"]}]},{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.creationline.com\/tech-blog\/9541#primaryimage","url":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png","contentUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2015\/04\/oc-id5-1024x343.png","width":1024,"height":343},{"@type":"BreadcrumbList","@id":"https:\/\/www.creationline.com\/tech-blog\/9541#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"HOME","item":"https:\/\/www.creationline.com\/tech-blog"},{"@type":"ListItem","position":2,"name":"\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6","item":"https:\/\/www.creationline.com\/tech-blog\/cloudnative"},{"@type":"ListItem","position":3,"name":"Chef","item":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/chef"},{"@type":"ListItem","position":4,"name":"[\u548c\u8a33] \u30d7\u30e9\u30a4\u30d9\u30fc\u30c8Supermarket\u30b5\u30fc\u30d0\u3092\u7acb\u3066\u3066\u307f\u3088\u3046 #getchef"}]},{"@type":"WebSite","@id":"https:\/\/www.creationline.com\/tech-blog\/#website","url":"https:\/\/www.creationline.com\/tech-blog\/","name":"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","description":"\u30a2\u30b8\u30e3\u30a4\u30eb\uff06DevOps\u3001\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6\u3001AI\uff06LLM\u306e\u5148\u7aef\u6280\u8853","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.creationline.com\/tech-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ja"},{"@type":"Person","@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206","name":"Daisuke Higuchi","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","url":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","contentUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","caption":"Daisuke Higuchi"},"description":"Chef\u30fbDocker\u30fbMirantis\u88fd\u54c1\u306a\u3069\u306e\u6280\u8853\u8981\u7d20\u306b\u52a0\u3048\u3066\u3001\u4f1a\u8b70\u306e\u9032\u3081\u65b9\u30fb\u6587\u7ae0\u306e\u66f8\u304d\u65b9\u306a\u3069\u306e\u696d\u52d9\u6539\u5584\u306b\u3082\u53d6\u308a\u7d44\u3093\u3067\u3044\u307e\u3059\u3002\u300cChef\u6d3b\u7528\u30ac\u30a4\u30c9\u300d\u5171\u8457\u306e\u307b\u304b\u3001Debian Official Developer\u3082\u3084\u3063\u3066\u3044\u307e\u3059\u3002","url":"https:\/\/www.creationline.com\/tech-blog\/author\/higuchi"}]}},"_links":{"self":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts\/9541","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/comments?post=9541"}],"version-history":[{"count":0,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts\/9541\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/media\/9716"}],"wp:attachment":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/media?parent=9541"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/categories?post=9541"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/tags?post=9541"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}