{"id":4480,"date":"2022-03-27T06:52:15","date_gmt":"2022-03-26T21:52:15","guid":{"rendered":"https:\/\/www.wetch.co.jp\/?p=4480"},"modified":"2022-03-27T06:52:17","modified_gmt":"2022-03-26T21:52:17","slug":"laravel9%e3%82%92%e3%81%b2%e3%81%a8%e3%81%8b%e3%81%98%e3%82%8a","status":"publish","type":"post","link":"https:\/\/www.wetch.co.jp\/note\/laravel9%e3%82%92%e3%81%b2%e3%81%a8%e3%81%8b%e3%81%98%e3%82%8a\/","title":{"rendered":"Laravel9\u3092\u3072\u3068\u304b\u3058\u308a"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u5ef6\u3073\u5ef6\u3073\u306b\u306a\u3063\u3066\u3044\u305fLaravel9\u304c2\u67088\u65e5\u306b\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\u306e\u3067\u3001\u9045\u307e\u304d\u306a\u304c\u3089\u4f7f\u3063\u3066\u307f\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u306a\u304a\u3001\u4eca\u307e\u3067\u306f\u958b\u767a\u74b0\u5883\u306e\u69cb\u7bc9\u306bVirtualBox\u3092\u4f7f\u7528\u3057\u3066\u304d\u307e\u3057\u305f\u304c\u3001Laravel8\u8fba\u308a\u304b\u3089Docker\u30d9\u30fc\u30b9\u3067\u52d5\u4f5c\u74b0\u5883\u3092\u7c21\u5358\u306b\u69cb\u7bc9\u3067\u304d\u308b\u300cLaravel Sail\u300d\u306a\u308b\u6a5f\u80fd\u304c\u63d0\u4f9b\u3055\u308c\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u306e\u3067\u3001\u4eca\u56de\u306f\u3053\u306e\u300cLaravel Sail\u300d\u3092\u4f7f\u7528\u3057\u3066\u307f\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u3061\u306a\u307f\u306b\u3001\u30db\u30b9\u30c8OS\u306fMac\uff08Catalina\uff09\u3067\u3001Docker Desktop\u3082\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u6e08\u307f\u3067\u3059\u3002<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Laravel9\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u516c\u5f0f\u30b5\u30a4\u30c8\u306e\u8aac\u660e\u306b\u3088\u308c\u3070\u3001\u74b0\u5883\u69cb\u7bc9\u306f\u4ee5\u4e0b\u306e\u30b3\u30de\u30f3\u30c9\u3092\u53e9\u304f\u306e\u307f\u3067\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -s \"https:\/\/laravel.build\/mylaravel\" | bash<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0a\u8a18\u3067\u300cmylaravel\u300d\u306e\u90e8\u5206\u306f\u4efb\u610f\u306b\u6307\u5b9a\u53ef\u80fd\u3067\u3001\u540c\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u305f\u30d5\u30a9\u30eb\u30c0\u76f4\u4e0b\u306b\u6307\u5b9a\u3057\u305f\u540d\u79f0\uff08\u3053\u3053\u3067\u306f\u300cmylarave\u300d\uff09\u306e\u30d5\u30a9\u30eb\u30c0\u304c\u751f\u6210\u3055\u308c\u3001\u305d\u306e\u4e2d\u306bLaravel\u74b0\u5883\u304c\u69cb\u7bc9\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u3061\u306a\u307f\u306b\u3001\u4e0a\u8a18\u3067curl\u30b3\u30de\u30f3\u30c9\u306b\u3088\u308a\u53d6\u5f97\u3055\u308c\u308b\u5185\u5bb9\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u306a\u3063\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>docker info &gt; \/dev\/null 2&gt;&amp;1\n\n# Ensure that Docker is running...\nif &#91; $? -ne 0 ]; then\n    echo \"Docker is not running.\"\n\n    exit 1\nfi\n\ndocker run --rm \\\n    -v \"$(pwd)\":\/opt \\\n    -w \/opt \\\n    laravelsail\/php81-composer:latest \\\n    bash -c \"laravel new mylaravel &amp;&amp; cd mylaravel &amp;&amp; php .\/artisan sail:install --with=mysql,redis,meilisearch,mailhog,selenium \"\n\ncd mylaravel\n\nCYAN='\\033&#91;0;36m'\nLIGHT_CYAN='\\033&#91;1;36m'\nWHITE='\\033&#91;1;37m'\nNC='\\033&#91;0m'\n\necho \"\"\n\nif sudo -n true 2&gt;\/dev\/null; then\n    sudo chown -R $USER: .\n    echo -e \"${WHITE}Get started with:${NC} cd mylaravel &amp;&amp; .\/vendor\/bin\/sail up\"\nelse\n    echo -e \"${WHITE}Please provide your password so we can make some final adjustments to your application's permissions.${NC}\"\n    echo \"\"\n    sudo chown -R $USER: .\n    echo \"\"\n    echo -e \"${WHITE}Thank you! We hope you build something incredible. Dive in with:${NC} cd mylaravel &amp;&amp; .\/vendor\/bin\/sail up\"\nfi<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u3056\u3063\u304f\u308a\u6574\u7406\u3059\u308b\u3068\u3001\u300c<meta charset=\"utf-8\">laravelsail\/php81-composer\u300d\u306a\u308bDocker\u30a4\u30e1\u30fc\u30b8\u306e\u6700\u65b0\u7248\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u74b0\u5883\u69cb\u7bc9\u3092\u884c\u306a\u3063\u3066\u3044\u308b\u3088\u3046\u3067\u3059\u304c\u3001\u540c\u30a4\u30e1\u30fc\u30b8\u306b\u5bfe\u3057\u3066\u306fLaravel\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9\u306b\u3088\u308b\u74b0\u5883\u69cb\u7bc9\uff08<meta charset=\"utf-8\">laravel new mylaravel\uff09\u3092\u884c\u3063\u305f\u5f8c\u3001\u540cLaravel\u74b0\u5883\u306b\u79fb\u52d5\u3057\u3001<meta charset=\"utf-8\">artisan\u30b3\u30de\u30f3\u30c9\uff08sail:install\uff09\u3092\u5b9f\u884c\u3059\u308b\u3088\u3046\u306b\u6307\u793a\u3057\u3066\u307e\u3059\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u3053\u306e<meta charset=\"utf-8\">sail:install\u306e\u5b9f\u884c\u3067\u306fdocker-compose.yml\u3092\u751f\u6210\u3059\u308b\u3088\u3046\u3067\u3059\u304c\u3001\u3053\u306e\u6642Laravel\u672c\u4f53\u7528\u30b3\u30f3\u30c6\u30ca\u4ee5\u5916\u306b<meta charset=\"utf-8\">mysql, redis, meilisearch, mailhog, selenium\u306b\u95a2\u3059\u308b\u30b3\u30f3\u30c6\u30ca\u3082\u4f75\u305b\u3066\u751f\u6210\u3059\u308b\u3088\u3046\u306b\u6307\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002<br>\u3053\u3053\u3067\u6307\u5b9a\u3057\u3066\u3044\u308b\u5404\u6a5f\u80fd\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u3082\u306e\u3067\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>mysql<\/td><td>SQL\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9<\/td><\/tr><tr><td><meta charset=\"utf-8\">redis<\/td><td>NoSQL\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9<\/td><\/tr><tr><td><meta charset=\"utf-8\">meilisearch<\/td><td>Rust\u3067\u5b9f\u88c5\u3055\u308c\u305f\u5168\u6587\u691c\u7d22\u30a8\u30f3\u30b8\u30f3<\/td><\/tr><tr><td><meta charset=\"utf-8\">mailhog<\/td><td>\u9001\u4fe1\u3057\u3088\u3046\u3068\u3057\u305f\u30e1\u30fc\u30eb\u3092\u30a4\u30f3\u30bf\u30fc\u30bb\u30d7\u30c8\u3057\u3001\u30d6\u30e9\u30a6\u30b6\u3067\u540c\u30e1\u30fc\u30eb\u306e\u5185\u5bb9\u3092\u78ba\u8a8d\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u6a5f\u80fd<\/td><\/tr><tr><td><meta charset=\"utf-8\">selenium<\/td><td>Web \u30d6\u30e9\u30a6\u30b6\u306e\u64cd\u4f5c\u3092\u81ea\u52d5\u5316\u3059\u308b\u305f\u3081\u306e\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">mysql, redis, meilisearch\u306f\u5b9f\u904b\u7528\u3067\u3082\uff08\u5fc5\u8981\u306b\u5fdc\u3058\u3066\uff09\u4f7f\u3046\u6a5f\u80fd\u3001<meta charset=\"utf-8\">mailhog, selenium\u306f\u30c6\u30b9\u30c8\u7528\u306e\u6a5f\u80fd\u3068\u8a00\u3063\u305f\u3068\u3053\u308d\u3067\u3057\u3087\u3046\u304b\u3002<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Laravel Sail\uff08Docker\uff09\u306e\u8d77\u52d5<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u74b0\u5883\u304c\u69cb\u7bc9\u3067\u304d\u305f\u3089\u3001\u540c\u74b0\u5883\u3067\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067<meta charset=\"utf-8\">docker-compose.yml\u306b\u6307\u5b9a\u3055\u308c\u305f\u30b3\u30f3\u30c6\u30ca\u304c\u8d77\u52d5\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/vendor\/bin\/sail up -d<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u30cd\u30c3\u30c8\u4e0a\u306e\u8aac\u660e\u3067\u306f\u300c-d\u300d\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u4ed8\u3044\u3066\u3044\u306a\u3044\u3082\u306e\u3082\u591a\u3044\u3067\u3059\u304c\u3001\u300c-d\u300d\u30aa\u30d7\u30b7\u30e7\u30f3\u6307\u5b9a\u306b\u3088\u308a\u30b3\u30f3\u30c6\u30ca\u304c\u30d0\u30c3\u30af\u30b0\u30e9\u30a6\u30f3\u30c9\u3067\u5b9f\u884c\u3055\u308c\u308b\u3088\u3046\u306b\u306a\u308b\u306e\u3067\u3001\u500b\u4eba\u7684\u306b\u306f\u3053\u3061\u3089\u304c\u304a\u52e7\u3081\u3067\u3059\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0a\u8a18\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;+] Running 7\/7\n \u283f Network mylaravel_sail              Created                                            0.0s\n \u283f Container mylaravel-selenium-1      Started                                            0.7s\n \u283f Container mylaravel-mysql-1         Started                                            0.8s\n \u283f Container mylaravel-meilisearch-1   Started                                            0.9s\n \u283f Container mylaravel-redis-1         Started                                            0.8s\n \u283f Container mylaravel-mailhog-1       Started                                            1.0s\n \u283f Container mylaravel-laravel.test-1  Started                                            1.6s<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Laravel\u672c\u4f53\u306e\u5b9f\u884c\u74b0\u5883\u306f\u300cmylaravel-laravel.test-1\u300d\u3067\u3001\u3053\u306e\u4e2d\u3067Web\u30b5\u30fc\u30d0\u6a5f\u80fd\u3084PHP\u304c\u52d5\u4f5c\u3059\u308b\u3088\u3046\u3067\u3059\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u306a\u304a\u3001\u30d0\u30c3\u30af\u30b0\u30e9\u30a6\u30f3\u30c9\u8d77\u52d5\u3057\u305f\u30b3\u30f3\u30c6\u30ca\u3092\u505c\u6b62\u3059\u308b\u5834\u5408\u306f\u4ee5\u4e0b\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/vendor\/bin\/sail stop<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0a\u8a18\u5b9f\u884c\u7d50\u679c\u3068\u3057\u3066\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;+] Running 6\/6\n \u283f Container mylaravel-mailhog-1       Stopped                                         0.1s\n \u283f Container mylaravel-laravel.test-1  Stopped                                        10.2s\n \u283f Container mylaravel-selenium-1      Stopped                                         4.2s\n \u283f Container mylaravel-meilisearch-1   Stopped                                         0.2s\n \u283f Container mylaravel-mysql-1         Stopped                                         1.3s\n \u283f Container mylaravel-redis-1         Stopped                                         0.2s<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">Laravel\u3078\u306e\u30a2\u30af\u30bb\u30b9<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Laravel Sail\u306e\u8d77\u52d5\u306b\u3088\u308aLaravel\u306e\u52d5\u4f5c\u306b\u5fc5\u8981\u306a\u30b5\u30fc\u30d3\u30b9\u306f\u5168\u3066\u958b\u59cb\u3055\u308c\u3066\u3044\u308b\u306e\u3067\u3001\u3042\u3068\u306fWeb\u30b5\u30fc\u30d0\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u306e\u307f\u3067\u3059\u3002<br>\u540cLaravel\u74b0\u5883\u3078\u306e\u30a2\u30af\u30bb\u30b9\u306f\u3001\u30d6\u30e9\u30a6\u30b6\u304b\u3089\u4e0b\u8a18URL\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u53ef\u80fd\u3067\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>http:&#47;&#47;localhost<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">\u7dcf\u62ec<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0a\u8a18\u3092\u307e\u3068\u3081\u308b\u3068\u3001Laravel9\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u95a2\u9023\u30b5\u30fc\u30d3\u30b9\u306e\u8d77\u52d5\u307e\u3067\u306f\u4ee5\u4e0b\u306e3\u3064\u306e\u30b3\u30de\u30f3\u30c9\u5b9f\u884c\u3067\u3067\u304d\u3066\u3057\u307e\u3046\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><meta charset=\"utf-8\">curl -s \"https:\/\/laravel.build\/mylaravel\" | bash\ncd mylaravel\n<meta charset=\"utf-8\">.\/vendor\/bin\/sail up -d<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5f37\u70c8\u306b\u4fbf\u5229\u306a\u306e\u3067\u3059\u304c\u3001\u3044\u304f\u3064\u304b\u7591\u554f\u70b9\u3082\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u6642\u306bLaravel\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u6307\u5b9a\u3057\u3066\u3044\u306a\u3044\u304c\u3001\u65e7\u30d0\u30fc\u30b8\u30e7\u30f3\uff08Laravel8\uff09\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u305f\u3044\u5834\u5408\u306f\u3069\u3046\u3059\u308c\u3070\u826f\u3044\u304b\uff1f<\/li><li>\u30a2\u30af\u30bb\u30b9\u304c\u300clocalhost\u300d\u9650\u5b9a\u306b\u306a\u3063\u3066\u3044\u308b\u304c\u3001\u8907\u6570\u306eWeb\u74b0\u5883\u3092\u5171\u5b58\u3055\u305b\u305f\u3044\u5834\u5408\u306f\u3069\u3046\u3059\u308c\u3070\u826f\u3044\u304b\uff1f<\/li><li>Laravel\u672c\u4f53\u306e\u5b9f\u884c\u74b0\u5883\u3067\u3042\u308b\u30b3\u30f3\u30c6\u30ca\u306e\u540d\u79f0\u304c\u300claravel.test\u300d\u3067\u3042\u308a\u3001\u3044\u304b\u306b\u3082\u958b\u767a\u74b0\u5883\u7528\u3067\u3042\u308b\u3088\u3046\u306a\u5370\u8c61\u3060\u304c\u3001\u672c\u756a\u74b0\u5883\u7528\u306e\u30b3\u30f3\u30c6\u30ca\u751f\u6210\u306f\u3069\u306e\u3088\u3046\u306b\u884c\u3046\u306e\u304b\uff1f<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u3053\u306e\u8fba\u306f\u5225\u9014\u8003\u3048\u3066\u3044\u304d\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5ef6\u3073\u5ef6\u3073\u306b\u306a\u3063\u3066\u3044\u305fLaravel9\u304c2\u67088\u65e5\u306b\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\u306e\u3067\u3001\u9045\u307e\u304d\u306a\u304c\u3089\u4f7f\u3063\u3066\u307f\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002 \u306a\u304a\u3001\u4eca\u307e\u3067\u306f\u958b\u767a\u74b0\u5883\u306e\u69cb\u7bc9\u306bVirtualBox\u3092\u4f7f\u7528\u3057\u3066\u304d\u307e\u3057\u305f\u304c\u3001Laravel8\u8fba\u308a\u304b\u3089Docker\u30d9 [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":4490,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[210],"tags":[],"class_list":["post-4480","post","type-post","status-publish","format-standard","has-post-thumbnail","category-210"],"_links":{"self":[{"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/posts\/4480","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/comments?post=4480"}],"version-history":[{"count":0,"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/posts\/4480\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/media\/4490"}],"wp:attachment":[{"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/media?parent=4480"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/categories?post=4480"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.wetch.co.jp\/note\/wp-json\/wp\/v2\/tags?post=4480"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}