<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Node.js on Tom 除錯中</title><link>https://tomleesm.github.io/tags/node.js/</link><description>Recent content in Node.js on Tom 除錯中</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Thu, 17 Jul 2025 17:50:21 +0800</lastBuildDate><atom:link href="https://tomleesm.github.io/tags/node.js/index.xml" rel="self" type="application/rss+xml"/><item><title>使用 docker 執行 node.js，問 AI 語法</title><link>https://tomleesm.github.io/posts/2025/07/run-node-js-with-docker/</link><pubDate>Thu, 17 Jul 2025 17:50:21 +0800</pubDate><guid>https://tomleesm.github.io/posts/2025/07/run-node-js-with-docker/</guid><description>&lt;p&gt;用 docker 執行 node.js 環境，先從 shell 開始，因為需要執行 &lt;code&gt;node file.js&lt;/code&gt;。一般是用 &lt;code&gt;docker run&lt;/code&gt; 如下所示&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run --rm -it node:22-alpine /bin/sh
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;怎麼改用 docker compose 實作呢？&lt;/p&gt;
&lt;p&gt;我平常只用 AI 來翻譯英文，和做一些市場調查，例如問它「網站後端程式語言市占率」，想說問問看「請將 docker run &amp;ndash;rm -it node:22-alpine /bin/sh 改用 docker compose」，結果如下：&lt;/p&gt;
&lt;h2 id="chatgpt"&gt;ChatGPT&lt;/h2&gt;
&lt;p&gt;你可以使用 Docker Compose 來達成等效於 &lt;code&gt;docker run --rm -it node:22-alpine /bin/sh&lt;/code&gt; 的效果。這裡的重點是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;使用 &lt;code&gt;node:22-alpine&lt;/code&gt; 映像&lt;/li&gt;
&lt;li&gt;進入一個互動式 shell&lt;/li&gt;
&lt;li&gt;容器在結束後自動移除（&lt;code&gt;--rm&lt;/code&gt;）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;雖然 Docker Compose 本身沒有 &lt;code&gt;--rm&lt;/code&gt; 的選項，但你可以透過 &lt;code&gt;docker compose run&lt;/code&gt; 搭配 &lt;code&gt;--rm&lt;/code&gt; 來達成類似效果。&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="方法一使用-docker-composeyml-搭配-docker-compose-run"&gt;方法一：使用 &lt;code&gt;docker-compose.yml&lt;/code&gt; 搭配 &lt;code&gt;docker compose run&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;建立一個 &lt;code&gt;docker-compose.yml&lt;/code&gt; 檔案如下：&lt;/p&gt;</description></item></channel></rss>