나 자신을 발견. S3에 ZIP 파일을 업로드해야합니다. 그런 다음 EB 응용 프로그램 용 응용 프로그램 버전을 만들어야합니다 (Zip 파일이있는 고유 레이블 및 S3Key 사용). 그런 다음 EB 환경을 새 Versionlabel로 업데이트해야합니다 (필요한 경우 노드 시작 스크립트를 지정하는 것을 잊지 마십시오).
아마이 코드는 누군가를 위해 도움이 될 것입니다 : 내가 필요한 것을 정확히
var aws = require('aws-sdk');
var s3 = new aws.S3();
var eb = new aws.ElasticBeanstalk();
var zipFileName = 'myCodeZipArchive.zip';
var appName = 'app-name';
var envName = 'env-name';
var s3bucket = 'my-app-source-bucket';
var label = `${appName}_${envName}_${new Date().toISOString()}`;
s3.upload({
Bucket: s3bucket,
Key: label,
Body: fs.createReadStream(zipFileName)
}).promise().then(() => eb.createApplicationVersion({
ApplicationName: appName,
VersionLabel: label,
SourceBundle: {
S3Bucket: s3bucket,
S3Key: label
}
}).promise()).then(() => eb.updateEnvironment({
ApplicationName: appName,
EnvironmentName: envName,
OptionSettings: [{
Namespace: 'aws:elasticbeanstalk:container:nodejs',
OptionName: 'NodeCommand',
Value: 'npm start'
}],
VersionLabel: label
}).promise());
, 감사합니다! –