{
    "componentChunkName": "component---src-templates-blog-post-tsx",
    "path": "/2021/10/09/",
    "result": {"data":{"site":{"siteMetadata":{"title":"otegal.dev"}},"markdownRemark":{"id":"9585b3e1-a126-5eec-8774-d65b3228fb8f","excerpt":"なにこれ Mutagenの設定メモ。 Docker Desctop for MacのVolumeマウント遅い問題の1つの解決策になります。 自分の環境での改善率は以下の様になりました。 RuboCop 10倍改善 yarn test (Jest) 6倍改善 MacやめてLinux…","html":"<h1>なにこれ</h1>\n<p>Mutagenの設定メモ。</p>\n<p>Docker Desctop for MacのVolumeマウント遅い問題の1つの解決策になります。</p>\n<p>自分の環境での改善率は以下の様になりました。</p>\n<ul>\n<li>RuboCop\n<ul>\n<li>10倍改善</li>\n</ul>\n</li>\n<li>yarn test (Jest)\n<ul>\n<li>6倍改善</li>\n</ul>\n</li>\n</ul>\n<p>MacやめてLinuxに変えようかなと思ったきっかけがDockerの性能のためなのですが、Mutagenを入れたら今の所ストレスは感じなくなりました！\nVagrantの中でDockerを利用するのは面倒いとか、docker-syncは期待するほどパフォーマンス改善されないとか思ってましたが、しばらく使っていこうと思います。</p>\n<h2>Mutagenのインストール</h2>\n<p>Mutagenの<code class=\"language-text\">Compose</code>を利用したいのでベータ版をインストールする<br>\n<a href=\"https://mutagen.io/documentation/orchestration/compose\">https://mutagen.io/documentation/orchestration/compose</a></p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"language-sh\"><code class=\"language-sh\">$ brew install mutagen-io/mutagen/mutagen-beta</code></pre></div>\n<h2>既存docker-compose.ymlをオーバーライドする</h2>\n<p>それぞれのプロジェクトで用意されている<code class=\"language-text\">docker-compose.yml</code>に対して設定をオーバーライドするファイル<code class=\"language-text\">docker-compose.override.yml</code>を用意します。</p>\n<p>以下の様に元のdocker-compose.ymlに対して設定を追記することができます。</p>\n<div class=\"gatsby-highlight\" data-language=\"yml\"><pre class=\"language-yml\"><code class=\"language-yml\"><span class=\"token key atrule\">services</span><span class=\"token punctuation\">:</span>\n  <span class=\"token key atrule\">backend</span><span class=\"token punctuation\">:</span>\n    <span class=\"token key atrule\">volumes</span><span class=\"token punctuation\">:</span>\n      <span class=\"token punctuation\">-</span> backendcode<span class=\"token punctuation\">:</span>/app\n\n<span class=\"token key atrule\">volumes</span><span class=\"token punctuation\">:</span>\n  <span class=\"token key atrule\">backendcode</span><span class=\"token punctuation\">:</span>\n\n<span class=\"token key atrule\">x-mutagen</span><span class=\"token punctuation\">:</span>\n  <span class=\"token key atrule\">sync</span><span class=\"token punctuation\">:</span>\n    <span class=\"token key atrule\">defaults</span><span class=\"token punctuation\">:</span>\n      <span class=\"token key atrule\">ignore</span><span class=\"token punctuation\">:</span>\n        <span class=\"token key atrule\">vcs</span><span class=\"token punctuation\">:</span> <span class=\"token boolean important\">true</span>\n    <span class=\"token key atrule\">backendcode</span><span class=\"token punctuation\">:</span>\n      <span class=\"token key atrule\">alpha</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\".\"</span>\n      <span class=\"token key atrule\">beta</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\"volume://backendcode\"</span>\n      <span class=\"token key atrule\">mode</span><span class=\"token punctuation\">:</span> <span class=\"token string\">\"two-way-resolved\"</span>\n      <span class=\"token key atrule\">ignore</span><span class=\"token punctuation\">:</span>\n        <span class=\"token key atrule\">paths</span><span class=\"token punctuation\">:</span>\n          <span class=\"token punctuation\">-</span> <span class=\"token string\">\"/log\"</span></code></pre></div>\n<h2>Gitにcommitしないようにする</h2>\n<p><code class=\"language-text\">docker-compose.override.yml</code>をプロジェクトにコミットしたくない場合、<code class=\"language-text\">.gitignore</code>へ追記したいと思いますが、<code class=\"language-text\">.gitignore</code>にも追記したくない場合もありますよね。</p>\n<p>その場合、<code class=\"language-text\">.git/info/exclude</code>にGit管理したくないファイル名を追記します。</p>\n<h2>Mutagenを利用してコンテナを立ち上げる</h2>\n<p><code class=\"language-text\">docker-compose</code>コマンドとほとんど同じように利用できます。</p>\n<div class=\"gatsby-highlight\" data-language=\"sh\"><pre class=\"language-sh\"><code class=\"language-sh\">$ mutagen compose up</code></pre></div>\n<p>コンテナ立ち上げたあとは普通に<code class=\"language-text\">docker-compose</code>コマンドを利用できます。</p>","frontmatter":{"title":"Mutagen設定メモ","tags":["Mutagen","Docker"],"date":"2021-10-09","description":null}}},"pageContext":{"id":"9585b3e1-a126-5eec-8774-d65b3228fb8f","previousPostId":"322d9444-0afc-58bd-88b5-1664948bbd7e","nextPostId":"b1796c10-3a60-5eb4-8b1e-deb4e37c5d64"}},
    "staticQueryHashes": ["2841359383"]}