LoginSignup
15
2

More than 5 years have passed since last update.

alpineのイメージでAWS Lambda用のgoバイナリをビルドしたらPathErrorになった話

Last updated at Posted at 2018-02-04

タイトルままですが

AWS Lambda での Go サポート開始
を見て、喜び勇んで、いままでapexでデプロイしていたツール系のlambdaを書き換えました。

いざデプロイして実行してみたところエラーが

fork/exec /var/task/bin/main: no such file or directory: PathError

デプロイに使ったzipの中を何回見てもそこにバイナリあるし、なんだろう。。。

早々に諦めて内村さまぁ〜ずの人間ドッグ2017を見ている時にふと気が付きました。

_人人人人人人人人_
> dynamic link <
 ̄Y^Y^Y^Y^Y^Y^Y ̄

ビルドにはgo-alpineのイメージを利用していました。
これはnetパッケージ周りのアレだろうと思い下記のようにビルドコマンドを変更してデプロイ。。。!

GOOS=linux go build -x -ldflags '-s -w' -o ./bin/main main.go
GOOS=linux go build -x -ldflags '-d -s -w' -a -tags netgo -installsuffix netgo -o ./bin/main main.go

リクエスト実行。。。!

_人人人人人_
> 200 OK <
 ̄Y^Y^Y^Y ̄

ちょっと古いですが同じような感じのissueが。

同僚がやっているRubber Duck Debuggingみたいなかんじで
僕は内村さまぁ〜ずタイムをもうけようとおもいました。

15
2
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
15
2