Skip to content

Commit

Permalink
Add aws fargate config; Fix Dockerfile
Browse files Browse the repository at this point in the history
  • Loading branch information
daison12006013 committed Jun 1, 2024
1 parent add55ce commit 75b1bfd
Show file tree
Hide file tree
Showing 5 changed files with 81 additions and 1 deletion.
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ COPY cmd/ /app/cmd/
COPY internal/ /app/internal/
COPY pkg/ /app/pkg/
COPY sqlc/ /app/sqlc/
COPY docs/ /app/docs/
COPY go.mod /app/
COPY go.sum /app/

Expand All @@ -30,7 +31,6 @@ RUN apk --no-cache add ca-certificates

WORKDIR /root

COPY dumps/ /root/dumps/
COPY --from=builder /app/cmd/http/main /root/

EXPOSE 8080
Expand Down
5 changes: 5 additions & 0 deletions README.MD
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,11 @@ Calling goose
make goose
```

## Cloud Services

- :white_check_mark: Fly.io
- :white_check_mark: AWS Fargate

## License

This project is licensed under the terms of the Apache 2.0 license. For more details, see the [LICENSE](LICENSE) file in the project root.
1 change: 1 addition & 0 deletions copilot/.workspace
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
application: web-golang-101
53 changes: 53 additions & 0 deletions copilot/api-service/manifest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# The manifest for the "api-service" service.
# Read the full specification for the "Load Balanced Web Service" type at:
# https://aws.github.io/copilot-cli/docs/manifest/lb-web-service/

# Your service name will be used in naming your resources like log groups, ECS services, etc.
name: api-service
type: Load Balanced Web Service

# Distribute traffic to your service.
http:
# Requests to this path will be forwarded to your service.
# To match all requests you can use the "/" path.
path: '/'
# You can specify a custom health check path. The default is "/".
# healthcheck: '/'

# Configuration for your containers and service.
image:
# Docker build arguments. For additional overrides: https://aws.github.io/copilot-cli/docs/manifest/lb-web-service/#image-build
build: Dockerfile
# Port exposed through your container to route traffic to it.
port: 8080

cpu: 256 # Number of CPU units for the task.
memory: 512 # Amount of memory in MiB used by the task.
platform: linux/x86_64 # See https://aws.github.io/copilot-cli/docs/manifest/lb-web-service/#platform
count: 1 # Number of tasks that should be running in your service.
exec: true # Enable running commands in your container.
network:
connect: true # Enable Service Connect for intra-environment traffic between services.

capacity_provider_strategy:
- base: 0
weight: 1
capacity_provider: FARGATE_SPOT

# storage:
# readonly_fs: true # Limit to read-only access to mounted root filesystems.

# Optional fields for more advanced use-cases.
#
#variables: # Pass environment variables as key value pairs.
# LOG_LEVEL: info

#secrets: # Pass secrets from AWS Systems Manager (SSM) Parameter Store.
# GITHUB_TOKEN: GITHUB_TOKEN # The key is the name of the environment variable, the value is the name of the SSM parameter.

# You can override any of the values defined above by environment.
#environments:
# test:
# count: 2 # Number of tasks to run for the "test" environment.
# deployment: # The deployment strategy for the "test" environment.
# rolling: 'recreate' # Stops existing tasks before new ones are started for faster deployments.
21 changes: 21 additions & 0 deletions copilot/environments/dev/manifest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# The manifest for the "dev" environment.
# Read the full specification for the "Environment" type at:
# https://aws.github.io/copilot-cli/docs/manifest/environment/

# Your environment name will be used in naming your resources like VPC, cluster, etc.
name: dev
type: Environment

# Import your own VPC and subnets or configure how they should be created.
# network:
# vpc:
# id:

# Configure the load balancers in your environment, once created.
# http:
# public:
# private:

# Configure observability for your environment resources.
observability:
container_insights: false

0 comments on commit 75b1bfd

Please sign in to comment.