/go-book-simple-api

Go言語でのRESTAPIサンプル

Primary LanguageGo

go-book-simple-api

  • Go言語で作成したREST API (CRUD) サンプルです。
  • フレームワーク
    • Gin
  • ORM
    • GORM
  • DB
    • MySQL

テーブル構成

booksテーブル
Id Name Price
integer string integer

API定義

URL Method Description
/books GET book情報取得
/books POST book情報作成
/books/:id PUT book情報更新
/books/:id DELETE book情報削除

設計

  • app配下にGoアプリケーション、build配下にDockerfileを格納しています。
.
├── README.md
├── /app
│   ├── /controller
│   ├── /model
│   ├── /repository
│   ├── /server
│   ├── go.mod
│   ├── go.sum
│   └── main.go
├── /build
│   └── /app
│       └── Dockerfile
└── docker-compose.yml
  • アプリケーションの依存関係は下記のようになっています。

使用方法

  • .env_rename_meファイルをコピーして.envファイルを作成します。
  • docker compose up -dを実行して localhost:8080 に対して各APIを実行します。
    • もしくは、DockerfileCMD ["go", "run", "main.go"]をコメントアウトして、下記コマンドで直接実行します。
      docker compose exec app go run main.go