Skip to content
This repository has been archived by the owner on Nov 17, 2022. It is now read-only.

harumaxy/golang_imageboard

Repository files navigation

Golang_Imageboard

Goで作成した画像掲示板

golang-imageboard-architecture

Live Demo
https://frontpage.golang-imageboard-8821.tk

GKEの料金が結構高いので、バックエンドは停止してます。

バックエンドが起動している状態を見たい方は、メールにてご連絡ください
[email protected]

サーバーサイド

Go 言語

フロントページ

TypeScript
create-react-appのボイラープレートから作成

  • React
  • Axios
  • Material-UI

ユーザー認証

IDaaS の Auth0 を使用
https://auth0.com/

サーバーサイドにセッション情報を保持せず、
クライアント側に jwt を持たせることでユーザー認証する。

これにより、web サーバーをステートレス化し、スケーラビリティが向上する。

インフラ

Google Cloud Platform を使用

  • Google Cloud Storage
  • Google Kubernetes Engine (GKE)
  • Cloud DNS

Infrastructure as Code

GKE クラスタのノードをプロビジョニングするのにTerraform
コンテナの管理にKubernetesを使用

コンテナ

バックエンドサーバーに Docker コンテナを使用
マルチステージビルドで、実行ファイルを alpine linux を使用して image 化することで
省サイズの実行環境(約 12MB)

CI/CD

Github Actionsによるビルドとデプロイ