1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Raspberry Pi4 に Go言語 と 「ECHO」の環境を構築する

Last updated at Posted at 2021-09-28

はじめに
Raspberry Pi4 に Go言語 と ECHO(クラウド型Webプラットフォーム)の環境構築を行った。
この時の覚書である。

そもそも「ECHOって何?」から始まり 検索して調べるも それらしきものは検索されず・・・・

余談ながら 大きな企業の中で ソフトのプログラムを作成していた程度 (プログラム作成に100%
の時間を割けず 会議など雑用が多い) では、Go言語は 聞いたことがある程度で 仕事で接した以外の
技術には、全く無知であったと思い知りました!


Go言語のインストール
Step1:https://golang.org/dl/ よりOSのイメージを作成する
    Raspberry Pi4 のCPUは、quad-core Cortex-A72 (ARM v8) 64-bit SoC なので
    [go1.21.0.linux-armv6l.tar.gz]を選ぶ (2023年09月05日現在)
    >$ wget https://go.dev/dl/go1.21.0.linux-armv6l.tar.gz
Go1.jpg

Step2:Raspberry Pi 上で ダウンロードした圧縮ファイルを解凍する。 goフォルダーが作成される
P9.jpg

Step3:ターミナルウィンドウ 内で コマンド以下のコマンドを実行

$ export PATH=~/go/bin:$PATH

★ターミナルウィンドウ 内で コマンドを実行するとインストールした Go のVersionが表示されれば、OK!

$ go version
go version go1.17.1 linux/arm 

Step4:下記の様な実行用ファルダー(MyWork/hello/)を作成
P10.jpg

Step5:上記 フォルダー内に以下の をテキストエディタを用いて作成
    ★Hello World を表示させるプログラム

hello.go
package main

import "fmt"

func main() {
fmt.Printf("Hello World\n")
}

Step6:ターミナルウィンドウ 内で 以下のコマンド を実行 (Hello World と表示されれば OK!)

pi@hostname:~/MyWork/hello $ go run hello.go
Hello World

Step7:ターミナルウィンドウ 内で 以下の コマンド を実行 (実行ファイル hello が生成され, ./helloで実行)

pi@hostname:~/MyWork/hello $ go build hello.go
pi@hostname:~/MyWork/hello $ ./hello
Hello World

ECHO のインストール
step8: ../home/pi 上で [echo のパッケージを Install]

$ go get github.com/labstack/echo/v4

step9: echo用の Workフォルダー(下記の様な・・・)を作成する
P11.jpg

step10: このフォルダーに をテキストエディタを用いて作成

hellp.go
package main

import (
  "net/http"
  "github.com/labstack/echo/v4"
  "github.com/labstack/echo/v4/middleware"
)

func main() {
  // Echo instance
  e := echo.New()

  // Middleware
  e.Use(middleware.Logger())
  e.Use(middleware.Recover())

  // Routes
  e.GET("/", hello)

  // Start server
  e.Logger.Fatal(e.Start(":1323"))
}

// Handler
func hello(c echo.Context) error {
  return c.String(http.StatusOK, "Hello, World!")
}

Step11: このフォルダーに対して初期化をする (2行目は、おまじない)
    ★GOPATH に代わる 新しいやり方....とのこと

$ go mod init exsample.com/m
$ go mod tidy

※/home/pi/go/pkg/mod/github.com/labstack/echo フォルダーに最新の ECHO パッケージが置かれている

Step12: hello.go を実行する。 (下記の様に Echo が表示される)

$ go run hello.go
   ____    __
  / __/___/ /  ___
 / _// __/ _ \/ _ \
/___/\__/_//_/\___/ v4.6.1
High performance, minimalist Go web framework
https://echo.labstack.com
____________________________________O/_______
                                    O\
⇨ http server started on [::]:1323

Step13: 上記で hello.go を起動した状態で ブラウザを用いて [http://localhost:1323] にアクセスすると Hello World と表示される。
P12.jpg

あ~、やっと出来た!!


☆2021年 9月28日(火) 午後3時10分 初版(Ver1.00) 作成
☆2021年10月30日(土) 午後3時30分 Ver1.10 に改版 - Go言語のVersion をUpdate


1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?