AWS로 Buildpack 만드는 방법
작성된 AWS 인스턴스
Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Type - ami-40142d25
Type t2.micro
볼륨: 8GB
먼저 설치를 위해 Go를 설치합니다.
참고사이트 축소판 그림로 설치했습니다.
설치하다.
sudo yum install golang
GOPATH 설정
.bashrc
에서 다음과 같은 내용을 보충한다.export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
source .bashrc
를 실행하고 환경 변수를 반영한 후 echo $GOPATH
를 확인하십시오.결실
[ec2-user@ip-XXX-XXX-XXX-XXX ~]$ echo $GOPATH
/home/ec2-user/go
이 정도면 됐어.그리고build-packager를 설치합니다.
이 사이트의
READOME
에 따라 아래 명령을 집행한다.go get github.com/cloudfoundry/libbuildpack
그럼 수첩은 아래와 같습니다cd ~/go/src/github.com/cloudfoundry/libbuildpack/packager/buildpack-packager && go install
AWS에서 이렇게 하면main.go:15:2: cannot find package "github.com/google/subcommands" in any of:
이런 메시지가 나왔습니다.그러니 이 포장도 넣으세요.
명령
go get github.com/google/subcommands
네.다시
cd ~/go/src/github.com/cloudfoundry/libbuildpack/packager/buildpack-packager && go install
정상적으로 설치할 수 있습니다.[ec2-user@ip-XXX-XXX-XXX-XXX ~]$ buildpack-packager
Usage: buildpack-packager <flags> <subcommand> <subcommand args>
Subcommands:
commands list all command names
flags describe all known top-level flags
help describe subcommands and their syntax
Subcommands for Custom:
build Create a buildpack zipfile from the current directory
init Creates a folder with the basic structure of a new buildpack
summary Print out list of dependencies of this buildpack
upgrade Upgrades a buildpack scaffolded by buildpack-packager init
Use "buildpack-packager flags" for a list of top-level flags
확인하세요.포장을 구축해 보세요.
나는 PHPer이기 때문에 포크
php-buildpack
로 맞춤 제작한다.먼저
git clone https://github.com/motuo1201/php-buildpack
중포크의 창고 클론입니다.그리고 나서
cd php-buildpack/
buildpack-packager build -cached -any-stack
이렇게 하면 다음과 같은 결과를 얻을 수 있다.[ec2-user@ip-XXX-XXX-XXX-XXX php-buildpack]$ buildpack-packager build -cached -any-stack
cached buildpack created and saved as /home/ec2-user/php-buildpack/php_buildpack-cached-v4.3.59.zip with a size of 979MB
[ec2-user@ip-XXX-XXX-XXX-XXX php-buildpack]$ ls
4.3.52.20180419122106tmp fixtures README.md
bin ISSUE_TEMPLATE requirements.txt
cf.Gemfile itf.Dockerfile.5409018274803835473 run_tests.sh
cf.Gemfile.lock lib scripts
CHANGELOG LICENSE src
compile-extensions manifest.yml tests
CONTRIBUTING.md NOTICE vendor
defaults php_buildpack-cached-v4.3.59.zip VERSION
extensions PULL_REQUEST_TEMPLATE
여기에 php_buildpack-cached-v4.3.59.zip
라는 서류가 하나 있다.이것은 실제로 사용할 수 있다
buildpack
.참고로 Buildpack을 만든 경과
php-buildpack
디버깅Laravel
을 사용할 때 .env
이 없어서 발생하는 경우가 많다.Giithub의 창고는 제출하지 않는다는 원칙
.env
이 있기 때문이다.(보안의 관점에서 볼 때 당연합니다.)다만,
pipeline
를 사용하거나 Giithub에서 직접 depro를 진행할 때 곤란합니다!즉.env.exampleが存在するかつ、.envファイルがない場合は、.env.exampleを.envにリネームする
추가 처리를 결정하다.아니오, composier예요.json의post-istall-cmd에 쓰세요!
이런 토크를 들었지만 이번엔 공부를 위해...
그리고 AWS에서 build pack을 하고 눈치를 챘어요.
IBM Cloud은 Git의 창고에서 Buildpack을 만들어 적용하지 않습니까?이런 거.
Reference
이 문제에 관하여(AWS로 Buildpack 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/motuo/items/338ba43bd8bc872e876c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)