ホーム

🧸

dockerのmySQLとGOでバイナリを作り、AWSのEC2から実行するログ

作成日: 2023-06-01T02:15:00.000Z

最終更新: 2024-08-07T13:14:00.000Z

GOのバイナリファイルの作成

バイナリファイルとは、テキストファイルなどのような特定のアプリケーションで読み込むことができるファイルフォーマットを前提として、それに該当しないファイルを指す呼称である。

goでコンパイルする際は、buildコマンドを使用

go build

goはクロスコンパイルできる。

Go は、 1 つのソースコードから様々な OS 向けのバイナリを生成するクロスコンパイルをサポートしています。しかも、対象の OS が無いとビルドできないわけではなく、例えば Mac で Windows 用、 Linux 用、 Plan9 用のバイナリを一気に生成するといったことができます。
しかも、 32bit マシンで 64bit 用のバイナリを生成することもできます。
  • GOOS=linux
  • GOARCH=amd64
  • CGO_ENABLED=0

のように指定する

▶︎ go build options

https://qiita.com/ssc-ynakamura/items/da37856f7f217d708a07

KEY, IV, DSNを環境変数に

  • key: 暗号化キー
  • iv: 暗号化IV
  • dsn: mysqlに接続するための情報。
    • DBユーザ名:パスワード@tcp(ホスト名:3306)/DB名?parseTime=true&loc=Asia%2FTokyo

セキュアS3バケット

  • GETのIP制限する
  • ポリシーを作成
    • S3のarnを指定
    • IAMを作成し、適用