> **Experimental**
>
> `@aws-cdk/aws-apprunner-alpha` is an [**experimental**](/stability) (alpha) package: its API may change in any release, without a major version bump.
# ImageRepository

Describes a source image repository.

- Stability: [Experimental](/cdk/api/stability.html)
- Source: [`lib/service.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0-alpha.0/packages/@aws-cdk/aws-apprunner-alpha/lib/service.ts#L591)

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as apprunner_alpha from '@aws-cdk/aws-apprunner-alpha';

declare const secret: apprunner_alpha.Secret;
const imageRepository: apprunner_alpha.ImageRepository = {
  imageIdentifier: 'imageIdentifier',
  imageRepositoryType: apprunner_alpha.ImageRepositoryType.ECR_PUBLIC,

  // the properties below are optional
  imageConfiguration: {
    environment: {
      environmentKey: 'environment',
    },
    environmentSecrets: {
      environmentSecretsKey: secret,
    },
    environmentVariables: {
      environmentVariablesKey: 'environmentVariables',
    },
    port: 123,
    startCommand: 'startCommand',
  },
};
```

## Properties

- `imageConfiguration`: [ImageConfiguration](/cdk/api/v2/docs/@aws-cdk_aws-apprunner-alpha.ImageConfiguration.html) — Configuration for running the identified image.

  **Default:** no image configuration will be passed. The default `port` will be 8080.

- `imageIdentifier`: string (required) — The identifier of the image.

  For `ECR_PUBLIC` imageRepositoryType, the identifier domain should
  always be `public.ecr.aws`. For `ECR`, the pattern should be
  `([0-9]{12}.dkr.ecr.[a-z\-]+-[0-9]{1}.amazonaws.com\/.*)`.

- `imageRepositoryType`: [ImageRepositoryType](/cdk/api/v2/docs/@aws-cdk_aws-apprunner-alpha.ImageRepositoryType.html) (required) — The type of the image repository.

  This reflects the repository provider and whether
  the repository is private or public.
