Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
2
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

@astronoka

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

タイトルままですが

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みたいなかんじで
僕は内村さまぁ〜ずタイムをもうけようとおもいました。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
2
Help us understand the problem. What are the problem?