<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>MongoDB on YAGI BLOG</title>
    <link>https://www.yuyagishita.com/tags/mongodb/</link>
    <description>Recent content in MongoDB on YAGI BLOG</description>
    <image>
      <title>YAGI BLOG</title>
      <url>https://www.yuyagishita.com/images/top.png</url>
      <link>https://www.yuyagishita.com/images/top.png</link>
    </image>
    <generator>Hugo -- 0.152.2</generator>
    <language>en</language>
    <lastBuildDate>Fri, 09 Dec 2022 01:21:47 +0900</lastBuildDate>
    <atom:link href="https://www.yuyagishita.com/tags/mongodb/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Next.js(React),Go kit(Golang)で「SENRYU」を個人開発した</title>
      <link>https://www.yuyagishita.com/indiedev/senryu/</link>
      <pubDate>Sun, 20 Sep 2020 22:04:18 +0900</pubDate>
      <guid>https://www.yuyagishita.com/indiedev/senryu/</guid>
      <description>&lt;p&gt;&lt;img alt=&#34;senryu&#34; loading=&#34;lazy&#34; src=&#34;https://www.yuyagishita.com/img/senryu.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;今回はじめて個人開発でアプリを作りました！！今年の1月に個人開発をしようと考えてから、アプリ企画・技術選定をして、開発途中で作るアプリを変えたりと色々と迷走しましたが、なんとか一区切りつきました！！（8か月ぐらいかかるなんてチンタラやってたなあ（笑））&lt;/p&gt;
&lt;p&gt;開発したアプリや今まで考えていたことなどをまとめます。&lt;/p&gt;
&lt;h2 id=&#34;アプリ概要&#34;&gt;アプリ概要&lt;/h2&gt;
&lt;p&gt;川柳を共有することができるSNSアプリ「SENRYU」を開発しました。&lt;/p&gt;
&lt;h2 id=&#34;機能&#34;&gt;機能&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;ログイン&lt;/li&gt;
&lt;li&gt;ユーザー登録&lt;/li&gt;
&lt;li&gt;ログアウト&lt;/li&gt;
&lt;li&gt;川柳一覧表示&lt;/li&gt;
&lt;li&gt;マイ川柳一覧表示&lt;/li&gt;
&lt;li&gt;川柳投稿&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;フロントエンド&#34;&gt;フロントエンド&lt;/h2&gt;
&lt;h3 id=&#34;nextjsreact&#34;&gt;Next.js(React)&lt;/h3&gt;
&lt;p&gt;フロントエンドにはNext.jsを利用しました。TypeScriptを使ってみたくて、TypeScriptと相性がいいReactを選択して、最近話題のNext.jsにしようと決めました。&lt;br&gt;
Next.jsはルーティング設定が楽だし、SSG, SSR, SPAをページごとに設定できて便利だしと使って良かったなと思っています。ただ、認証はFirebaseやNextAuth.jsを利用して他のSNSアカウントとかでログインする実装にするのが楽だと感じました。&lt;/p&gt;
&lt;h3 id=&#34;material-ui&#34;&gt;Material-UI&lt;/h3&gt;
&lt;p&gt;ReactのUIコンポーネントライブラリであるMaterial-UIを利用してUIの基礎を作りました。簡単に見た目を整えることができるので、とても便利です。&lt;/p&gt;
&lt;h3 id=&#34;styled-components&#34;&gt;styled-components&lt;/h3&gt;
&lt;p&gt;Material-UIの見た目を調整したい時にCCS in JSのstyled-componentsを利用しました。TypeScript内でCSSを書けるので普段CSSとかを書かない僕には使いやすかったです。&lt;/p&gt;
&lt;h2 id=&#34;バックエンド&#34;&gt;バックエンド&lt;/h2&gt;
&lt;h3 id=&#34;go-kitgolang&#34;&gt;Go kit(Golang)&lt;/h3&gt;
&lt;p&gt;個人的にGolangを利用したかったのとマイクロサービス構成でアプリを作ってみたいという理由からGo kitを利用しました。使ってみた感想としてあまり日本語のドキュメントとかなく調べるのが大変でしたが、Golangにはホットリロードがあってコンパイルが速く言語に慣れれば開発スピードが上がりそうだなと思いました。&lt;/p&gt;
&lt;h2 id=&#34;データベース&#34;&gt;データベース&lt;/h2&gt;
&lt;h3 id=&#34;mongodb&#34;&gt;MongoDB&lt;/h3&gt;
&lt;p&gt;NoSQLを利用したことがなかったので今回利用しました。MongoDBの基礎的な知識を身につけることはできましたが、RDBMSよりもNoSQLを利用するメリットがあんまりわからなかったです。&lt;/p&gt;
&lt;h2 id=&#34;開発環境&#34;&gt;開発環境&lt;/h2&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;マイクロサービス構成でアプリ開発をしていたので、それぞれのサービス毎にコンテナを作成しました。ローカルでDockerコンテナを立てて開発するときはVSCodeのRemote Containerが非常に便利でした。ぜひ使ってみてほしいです。&lt;/p&gt;
&lt;h2 id=&#34;対象リポジトリ&#34;&gt;対象リポジトリ&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/yuyagishita/senryu-frontend&#34;&gt;senryu-frontend&lt;/a&gt;&lt;br&gt;
&lt;a href=&#34;https://github.com/yuyagishita/senryu-user&#34;&gt;senryu-user&lt;/a&gt;&lt;br&gt;
&lt;a href=&#34;https://github.com/yuyagishita/senryu-post&#34;&gt;senryu-post&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;記事を書くまでの経緯&#34;&gt;記事を書くまでの経緯&lt;/h2&gt;
&lt;p&gt;元々、今年の1月に他のサービス開発を考えていました。技術選定の時には&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Next.js(React)&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;Go kit(Golang)&lt;/li&gt;
&lt;li&gt;MongoDB&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;Github Actions&lt;/li&gt;
&lt;li&gt;AWS&lt;/li&gt;
&lt;li&gt;K8s&lt;/li&gt;
&lt;li&gt;マイクロサービス&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;でアプリを開発してリリースをしようと思っていました。せっかくの個人開発だし勉強もかねて挑戦してやる！っていう気持ちで技術選定をしましたが、今思うとDocker以外はほぼ経験がなかったのでめちゃくちゃ無謀だったなと思います。（笑）&lt;br&gt;
そんな感じで技術選定をしてから要件や仕様決めて開発を始めましたが、わからないことが多すぎで全然進捗がなかったです。。亀の足のような遅さでしたがなんとか進めていた
4月頃か5月頃に気づいてしまいました。&lt;br&gt;
「クラウドでK8s使うと金けっこうかかるやんけ！」&lt;br&gt;
今思うと当たり前だし、調査不足すぎだよ自分。。ということがあり、最初に作りたかったサービスは世にリリースするのが厳しいなと思いましたが、せっかくある程度までは勉強して作っていたので、違うサービスとして開発をしてGithubで公開してポートフォリオ的な感じにしようと決めました。&lt;br&gt;
といった経緯で今に至ります。結果的には個人開発したアプリをリリースすることはできませんでしたが、Next.jsとGolangを学べたり個人開発の雰囲気を味わえたので良かったです。&lt;/p&gt;
&lt;h2 id=&#34;最後に&#34;&gt;最後に&lt;/h2&gt;
&lt;p&gt;個人開発はすべてを自分で考えないといけないので、とても大変ですが技術選定や作業の進め方など誰からも指図されずに好きなようにできるので、楽しいし学びが多いですね。&lt;/p&gt;</description>
    </item>
    <item>
      <title>MongoDB 入門</title>
      <link>https://www.yuyagishita.com/tech/database/mongodb-tutorial/</link>
      <pubDate>Thu, 30 Apr 2020 20:26:52 +0900</pubDate>
      <guid>https://www.yuyagishita.com/tech/database/mongodb-tutorial/</guid>
      <description>&lt;p&gt;&lt;img alt=&#34;mongodb-logo&#34; loading=&#34;lazy&#34; src=&#34;https://www.yuyagishita.com/img/mongodb-logo.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;最近、MongoDBを使うことがあり、NoSQLをはじめて使いました。MongoDBを触ったことがない人のために書きます。&lt;/p&gt;
&lt;h2 id=&#34;mongodbインストール起動&#34;&gt;MongoDBインストール&amp;amp;起動&lt;/h2&gt;
&lt;p&gt;今回はDockerHubからMongoDBのコンテナイメージをインストールします。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ docker pull mongo
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;インストールができたら、以下コマンドでコンテナを起動します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ docker run --name mongo-sample -d mongo
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;-d&lt;/code&gt;はバックグランドで起動することを意味してます。
起動したコンテナ内に以下コマンドで入ります。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ docker exec -it mongo-sample bash
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;mongodbのシェル起動&#34;&gt;MongoDBのシェル起動&lt;/h2&gt;
&lt;p&gt;MongoDBのコンテナ内で以下コマンドを実行します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ mongo
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;シェルを起動したら、環境準備は完了です。&lt;/p&gt;
&lt;h2 id=&#34;基礎的な用語解説&#34;&gt;基礎的な用語解説&lt;/h2&gt;
&lt;p&gt;MongoDBをさわっていく上で、イメージしやすくするために、Oracleの用語と比較します。&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;MongoDB&lt;/th&gt;
          &lt;th&gt;Oracle&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;データベース&lt;/td&gt;
          &lt;td&gt;データベース&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;コレクション&lt;/td&gt;
          &lt;td&gt;テーブル&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;ドキュメント&lt;/td&gt;
          &lt;td&gt;行（レコード）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;フィールド&lt;/td&gt;
          &lt;td&gt;列（カラム）&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;テストデータ作成&#34;&gt;テストデータ作成&lt;/h2&gt;
&lt;p&gt;以下コマンドをシェルで入力して、テストデータを作成します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&amp;gt; db.foods.insert({name:&amp;#39;apple&amp;#39;, price:50, producer:[&amp;#39;sato&amp;#39;]});
&amp;gt; db.foods.insert({name:&amp;#39;meat&amp;#39;, price:100, producer:[&amp;#39;suzuki&amp;#39;]});
&amp;gt; db.foods.insert({name:&amp;#39;fish&amp;#39;, price:120, producer:[&amp;#39;kaneko&amp;#39;, &amp;#39;kitamura&amp;#39;]});
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;以下コマンドでDBの情報をみることができます。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&amp;gt; db.stats()
{
	&amp;#34;db&amp;#34; : &amp;#34;test&amp;#34;,
	&amp;#34;collections&amp;#34; : 1,
	&amp;#34;views&amp;#34; : 0,
	&amp;#34;objects&amp;#34; : 3,
	&amp;#34;avgObjSize&amp;#34; : 86,
	&amp;#34;dataSize&amp;#34; : 258,
	&amp;#34;storageSize&amp;#34; : 20480,
	&amp;#34;numExtents&amp;#34; : 0,
	&amp;#34;indexes&amp;#34; : 1,
	&amp;#34;indexSize&amp;#34; : 20480,
	&amp;#34;scaleFactor&amp;#34; : 1,
	&amp;#34;fsUsedSize&amp;#34; : 28014751744,
	&amp;#34;fsTotalSize&amp;#34; : 62725623808,
	&amp;#34;ok&amp;#34; : 1
}
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;test&lt;/code&gt;データベースに&lt;code&gt;&amp;quot;collections&amp;quot; : 1&lt;/code&gt;となっていて、&lt;code&gt;foods&lt;/code&gt;コレクションが作成されて、&lt;code&gt;&amp;quot;objects&amp;quot; : 3&lt;/code&gt;からドキュメントが3つ作成されていることが分かります。&lt;/p&gt;</description>
    </item>
    <item>
      <title>React &#43; Go &#43; MongoDBの環境をDocker Composeで作成した</title>
      <link>https://www.yuyagishita.com/tech/docker/react-golang-mongodb-with-docker-compose/</link>
      <pubDate>Sat, 11 Apr 2020 12:51:41 +0900</pubDate>
      <guid>https://www.yuyagishita.com/tech/docker/react-golang-mongodb-with-docker-compose/</guid>
      <description>&lt;p&gt;&lt;img alt=&#34;react-golang-mongodb-with-docker-compose&#34; loading=&#34;lazy&#34; src=&#34;https://www.yuyagishita.com/img/react-golang-mongodb-with-docker-compose.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;現在、勉強がてら個人開発をしていて、せっかくの個人開発なので、今までさわったことがないReact, Go, MongoDBでwebアプリを作ります。
その最初の段階として、Docker Composeを使って環境構築を進めます。&lt;/p&gt;
&lt;h2 id=&#34;reactの環境構築&#34;&gt;Reactの環境構築&lt;/h2&gt;
&lt;p&gt;今回の開発では、プロジェクト配下をこんな感じにしています。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;プロジェクト
├── backend
├── frontend
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Reactは&lt;code&gt;frontend&lt;/code&gt;配下に構築します。&lt;/p&gt;
&lt;h3 id=&#34;dockerfileの作成&#34;&gt;&lt;code&gt;Dockerfile&lt;/code&gt;の作成&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;Dockerfile&lt;/code&gt;にDocker上で起動させるコンテナの構成情報を書きます。
&lt;code&gt;frontend&lt;/code&gt;配下に以下内容で作成します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-Dockerfile&#34; data-lang=&#34;Dockerfile&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s&#34;&gt;node:13.12.0-alpine3.10&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;WORKDIR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/usr/src/app&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;1行目にはコンテナのDockerイメージ、2行目にはコンテナ内の作業ディレクトリを記載しています。
alpineはAlpine Linuxのことで、必要最低限の構成がされているおかげで、Dockerイメージの軽量化を図ることができます。&lt;/p&gt;
&lt;h3 id=&#34;docker-composeymlの作成&#34;&gt;&lt;code&gt;docker-compose.yml&lt;/code&gt;の作成&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;docker-compose.yml&lt;/code&gt;で複数のコンテナをまとめて起動することができます。拡張子は「.yml」「.yaml」どちらでも動きます。
&lt;del&gt;どっちかに統一してくれればいいのに。&lt;/del&gt;&lt;br&gt;
プロジェクト配下に以下内容で作成します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-yml&#34; data-lang=&#34;yml&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;version&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;3&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;services&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;node&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;build&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;context&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;./frontend&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;dockerfile&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;Dockerfile&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;volumes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;./frontend:/usr/src/app&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;command&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;sh -c &amp;#34;yarn start&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;ports&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;            &lt;/span&gt;- &lt;span class=&#34;s2&#34;&gt;&amp;#34;3000:3000&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;volumes&lt;/code&gt;ではコンテナ内の&lt;code&gt;usr/src/app&lt;/code&gt;を&lt;code&gt;frontend&lt;/code&gt;に永続化させます。
&lt;code&gt;ports&lt;/code&gt;では外部の3000ポートとコンテナ内の3000ポートをつなげています。ローカル環境では&lt;code&gt;localhost:3000&lt;/code&gt;でアクセスができるようになります。&lt;/p&gt;
&lt;h3 id=&#34;dockerイメージのビルド&#34;&gt;Dockerイメージのビルド&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;docker-compose.yml&lt;/code&gt;のある階層で以下コマンドを叩きます。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;docker-compose build
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Building node
Step 1/2 : FROM node:13.12.0-alpine3.10
 ---&amp;gt; b529a862f234
Step 2/2 : WORKDIR /usr/src/app
 ---&amp;gt; Using cache
 ---&amp;gt; b753b92fbf97
Successfully built b753b92fbf97
Successfully tagged プロジェクト名_node:latest
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;上記のような表示がされ、ビルドすることができます。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
