aws-crt
Version:
NodeJS/browser bindings to the aws-c-* libraries
48 lines (44 loc) • 2 kB
Markdown
## Building Windows Docker Images and Uploading them to AWS Elastic Container Service
### Prerequisites
* An host to build the image with
* Windows Server 2016 with Containers. The EC2 AMI
Windows_Server-2016-English-Full-Containers-2019.09.11 was used to build the
images used by this repository
* Docker
* To install run the following in an admin powershell of your new instance:
```
Install-Module DockerMsftProvider -Force
Install-Package Docker -ProviderName DockerMsftProvider -Force
(Install-WindowsFeature Containers).RestartNeeded
Restart-Computer
```
* See [docker docs](https://docs.docker.com/install/windows/docker-ee/) for
latest instructions
* AWS CLI
* Installed by default in EC2 AMI, used to push the docker images
### Build the images
In a PowerShell prompt run:
```
build_images.ps1
```
You can test the images by running `docker run -it vs2015` or `docker run -it
vs2017`. To emulate a CodeBuild run locally execute the following inside one of
the docker images :
```
$ git clone https://github.com/awslabs/aws-lc.git -b main --depth 1
$ cd aws-lc
# Depending on the docker image run:
$ .\tests\ci\run_windows_tests.bat "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
# or
$ .\tests\ci\run_windows_tests.bat "C:\Program Files (x86)\Microsoft Visual Studio 15.0\VC\vcvarsall.bat" x64
```
### Push the images
If you are publishing to your own account, update the `ECS_REPO` value in
`push_images.ps1`. You can find the correct URI in the AWS Console for your ECR
repository.
Once you have `ECS_REPO` set properly, and you have configured your Powershell
AWS CLI credentials correctly, simply _source_ push_images.ps1 `. .\push.ps1`.
Note that because powershell CLI credentials are per-powershell-session, it's
important to use dot-sourcing if you use the `Set-AWSCredential` cmdlet to
configure your credentials. If you're using EC2 Instance Roles, then it's not
strictly necessary to dot-source the script.