mirror of
				https://github.com/yeslayla/nakama-helm-chart.git
				synced 2025-10-31 10:33:03 +01:00 
			
		
		
		
	Allow ECS to pull docker image from private repo
Use AWS::NoValue
Remove {}
Try at CredentialsParameter level
Duplicate code :/
Remove volume
			
			
This commit is contained in:
		| @ -38,9 +38,14 @@ Parameters: | |||||||
|     Type: Number |     Type: Number | ||||||
|     Description: Port for the Postgres server |     Description: Port for the Postgres server | ||||||
|     Default: 5432 |     Default: 5432 | ||||||
|  |   RepositoryCredentialsSecret: | ||||||
|  |     Type: String | ||||||
|  |     Description: Arn of repostiory secret from AWS Secrets Manager. See https://docs.aws.amazon.com/AmazonECS/latest/developerguide/private-auth.html for more information | ||||||
|  |     Default: "" | ||||||
|  |  | ||||||
| Conditions: | Conditions: | ||||||
|   CreateSecret: !Equals [!Ref NakamaPasswordOverride, ""] |   CreateSecret: !Equals [!Ref NakamaPasswordOverride, ""] | ||||||
|  |   NoRepositoryCredentials: !Equals [!Ref RepositoryCredentialsSecret, ""] | ||||||
|  |  | ||||||
| Resources: | Resources: | ||||||
|  |  | ||||||
| @ -64,6 +69,8 @@ Resources: | |||||||
|     Type: AWS::ECS::TaskDefinition |     Type: AWS::ECS::TaskDefinition | ||||||
|     Properties: |     Properties: | ||||||
|       ContainerDefinitions: |       ContainerDefinitions: | ||||||
|  |       - !If | ||||||
|  |         - NoRepositoryCredentials | ||||||
|         - Name: nakama |         - Name: nakama | ||||||
|           Essential: 'true' |           Essential: 'true' | ||||||
|           Image: !Ref NakamaContainer |           Image: !Ref NakamaContainer | ||||||
| @ -84,9 +91,6 @@ Resources: | |||||||
|                 Ref: AWS::Region |                 Ref: AWS::Region | ||||||
|               awslogs-group: |               awslogs-group: | ||||||
|                 Ref: LogGroup |                 Ref: LogGroup | ||||||
|         MountPoints: |  | ||||||
|           - ContainerPath: /nakama/volume |  | ||||||
|             SourceVolume: "nakama-volume" |  | ||||||
|           EntryPoint:  |           EntryPoint:  | ||||||
|               - "/bin/sh" |               - "/bin/sh" | ||||||
|               - "-ecx" |               - "-ecx" | ||||||
| @ -95,8 +99,36 @@ Resources: | |||||||
|                 !Sub "exec /nakama/nakama --name ${ServerName} --database.address ${DatabaseUsername}:${DatabasePassword}@${DatabaseEndpoint}:${DatabasePort} --console.username ${NakamaUsername} --console.password \"", |                 !Sub "exec /nakama/nakama --name ${ServerName} --database.address ${DatabaseUsername}:${DatabasePassword}@${DatabaseEndpoint}:${DatabasePort} --console.username ${NakamaUsername} --console.password \"", | ||||||
|                 !If [CreateSecret, !Join ["", ["{{resolve:secretsmanager:",  !Ref AdminPortalPassword,":SecretString}}" ]], !Ref NakamaPasswordOverride ], "\"" |                 !If [CreateSecret, !Join ["", ["{{resolve:secretsmanager:",  !Ref AdminPortalPassword,":SecretString}}" ]], !Ref NakamaPasswordOverride ], "\"" | ||||||
|                 ]] |                 ]] | ||||||
|       Volumes: |         - Name: nakama | ||||||
|         - Name: "nakama-volume" |           Essential: 'true' | ||||||
|  |           Image: !Ref NakamaContainer | ||||||
|  |           RepositoryCredentials: | ||||||
|  |             CredentialsParameter: !Ref RepositoryCredentialsSecret | ||||||
|  |           MemoryReservation: 800 | ||||||
|  |           PortMappings: | ||||||
|  |           - HostPort: 0 | ||||||
|  |             ContainerPort: 7348 | ||||||
|  |           - HostPort: 0 | ||||||
|  |             ContainerPort: 7349 | ||||||
|  |           - HostPort: 0 | ||||||
|  |             ContainerPort: 7350 | ||||||
|  |           - HostPort: 0 | ||||||
|  |             ContainerPort: 7351 | ||||||
|  |           LogConfiguration: | ||||||
|  |             LogDriver: awslogs | ||||||
|  |             Options: | ||||||
|  |               awslogs-region: | ||||||
|  |                 Ref: AWS::Region | ||||||
|  |               awslogs-group: | ||||||
|  |                 Ref: LogGroup | ||||||
|  |           EntryPoint:  | ||||||
|  |               - "/bin/sh" | ||||||
|  |               - "-ecx" | ||||||
|  |               - !Join ["", [ | ||||||
|  |                 !Sub "/nakama/nakama migrate up --database.address ${DatabaseUsername}:${DatabasePassword}@${DatabaseEndpoint}:${DatabasePort} &&\n", | ||||||
|  |                 !Sub "exec /nakama/nakama --name ${ServerName} --database.address ${DatabaseUsername}:${DatabasePassword}@${DatabaseEndpoint}:${DatabasePort} --console.username ${NakamaUsername} --console.password \"", | ||||||
|  |                 !If [CreateSecret, !Join ["", ["{{resolve:secretsmanager:",  !Ref AdminPortalPassword,":SecretString}}" ]], !Ref NakamaPasswordOverride ], "\"" | ||||||
|  |                 ]] | ||||||
| Outputs: | Outputs: | ||||||
|   TaskArn: |   TaskArn: | ||||||
|     Description: ARN of the TaskDefinition |     Description: ARN of the TaskDefinition | ||||||
|  | |||||||
| @ -25,6 +25,10 @@ Parameters: | |||||||
|     Type: String |     Type: String | ||||||
|     Description: The cluster to run the Nakama service on, if empty will create new cluster. |     Description: The cluster to run the Nakama service on, if empty will create new cluster. | ||||||
|     Default: "" |     Default: "" | ||||||
|  |   RepositoryCredentialsSecret: | ||||||
|  |     Type: String | ||||||
|  |     Description: Arn of repostiory secret from AWS Secrets Manager. See https://docs.aws.amazon.com/AmazonECS/latest/developerguide/private-auth.html for more information | ||||||
|  |     Default: "" | ||||||
|    |    | ||||||
|   #----------------- |   #----------------- | ||||||
|   # Load Balancing  |   # Load Balancing  | ||||||
| @ -149,6 +153,7 @@ Metadata: | |||||||
|         default: "ECS Configuration" |         default: "ECS Configuration" | ||||||
|       Parameters: |       Parameters: | ||||||
|       - EcsClusterOverride |       - EcsClusterOverride | ||||||
|  |       - RepositoryCredentialsSecret | ||||||
|     - Label: |     - Label: | ||||||
|         default: "Database Configuration" |         default: "Database Configuration" | ||||||
|       Parameters: |       Parameters: | ||||||
| @ -212,6 +217,8 @@ Metadata: | |||||||
|         default: "RDS Storage" |         default: "RDS Storage" | ||||||
|       RdsAccessCidr: |       RdsAccessCidr: | ||||||
|         default: "RDS Allow Access CIDR" |         default: "RDS Allow Access CIDR" | ||||||
|  |       RepositoryCredentialsSecret: | ||||||
|  |         default: "Docker Repository Credentials" | ||||||
|  |  | ||||||
|  |  | ||||||
| Conditions: | Conditions: | ||||||
| @ -298,6 +305,7 @@ Resources: | |||||||
|         DatabasePort: !If ["CreateRdsStack", !GetAtt RdsDatabase.Outputs.RdsPort, !Ref DatabasePort] |         DatabasePort: !If ["CreateRdsStack", !GetAtt RdsDatabase.Outputs.RdsPort, !Ref DatabasePort] | ||||||
|         NakamaUsername: !Ref NakamaUsername |         NakamaUsername: !Ref NakamaUsername | ||||||
|         NakamaPasswordOverride: !Ref NakamaPasswordOverride |         NakamaPasswordOverride: !Ref NakamaPasswordOverride | ||||||
|  |         RepositoryCredentialsSecret: !Ref RepositoryCredentialsSecret | ||||||
|  |  | ||||||
|   EcsService: |   EcsService: | ||||||
|     DependsOn: LoadBalancing |     DependsOn: LoadBalancing | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user