Docker 개발 환경 for Lambda Rust runtime
시험해 보다
Docker를 설치할 환경을 준비하십시오.거기에 딘 명령을 설치하고 PATH도 통과한다.
$ curl -o ~/.local/bin/din https://raw.githubusercontent.com/anyakichi/docker-buildenv/master/din.sh
$ PATH=$HOME/.local/bin:$PATH
lambda-rust-sample는 받은 데이터를 직접 반환하는 프로그램입니다.
$ mkdir workspace && cd workspace
$ din anyakichi/lambda-rust-builder
[builder@workspace build]$ extract
[builder@workspace build]$ setup
[builder@workspace lambda-rust-sample]$ build
[builder@workspace lambda-rust-sample]$ echo '{"data":"test"}' \
  | DOCKER_LAMBDA_USE_STDIN=1 /var/runtime/init -bootstrap target/release/lambda-rust-sample
계속해서 AWS로 실제 운행해 보자.
[builder@workspace lambda-rust-sample]$ package
업로드 후 실행(콘솔에서도 가능).
$ aws lambda invoke --function-name lambda-rust-sample \
  --payload '{"data":"test"}' /dev/stdout
컨테이너 외부에서 액세스
Docker 컨테이너는 Lambda의 운행 환경(실제로 아까도 표준 입력에서 데이터를 전달하는 형식으로 실행되었기 때문)이기 때문에 다음에 호스트 측에서 요청을 해보도록 하겠습니다.
워크스페이스에서 이번에는 런 명령을 직접 실행해보자(9001 포트도 공개).
$ cd workspace
$ din -p 9001:9001 anyakichi/lambda-rust-builder run
$ curl -d '{"data":"test"}' http://localhost:9001/2015-03-31/functions/myfunction/invocations
사소한 일
Amazon Linux2의 환경에서 Pkg-config의 상태가 좋지 않은 것 같고 Openssl-Sys 등의 구축이 실패했습니다.그래서 Docker 환경도 Amazon Linux1로 바뀌었고, AWS 측도 이에 협조하고 있다.
딘을 사용하는 이 시스템은 Docker 개발 환경이라고 불리며 삽입식 펌웨어(Yocto와 AOSP 등)를 구축하기 위해 제작됐으나 대체로 무엇이든 사용할 수 있다.
Reference
이 문제에 관하여(Docker 개발 환경 for Lambda Rust runtime), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/anyakichi/articles/71a24fef849b64텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)