This adapter allows Astro to deploy your SSR or static site to AWS.
Add the AWS adapter to enable SST in your Astro project with the following astro add command. This will install the adapter and make the appropriate changes to your astro.config.mjs file in one step.
# Using NPM
npx astro add astro-sst
# Using Yarn
yarn astro add astro-sst
# Using PNPM
pnpm astro add astro-sstIf you prefer to install the adapter manually instead, complete the following two steps:
-
Install the AWS adapter to your project's dependencies using your preferred package manager. If you're using npm or aren't sure, run this in the terminal:
npm install astro-sst
-
Add two new lines to your
astro.config.mjsproject configuration file.import { defineConfig } from "astro/config"; import aws from "astro-sst"; export default defineConfig({ output: "server", adapter: aws(), });
When utilizing server output, you can choose how responses are handled:
buffer: Responses are buffered and sent as a single response. (default)stream: Responses are streamed as they are generated.
import { defineConfig } from "astro/config";
import aws from "astro-sst";
export default defineConfig({
output: "server",
adapter: aws({
responseMode: "stream",
}),
});If you're upgrading from v2 of this adapter, here are the key changes to be aware of:
-
Remove the
deploymentStrategyoption fromastro.config.mjs. Instead, theoutputsetting in your Astro config is now used to determine the deployment type:- If you previously used
deploymentStrategy: "regional", now setoutput: "server"inastro.config.mjs. - If you previously used
deploymentStrategy: "edge", now setoutput: "server"inastro.config.mjs. Update SST to v3.9.25 or later. And configureregionson your Astro component. - If you previously used
deploymentStrategy: "static", now setoutput: "static"inastro.config.mjs.
- If you previously used
-
Remove the
serverRoutesoption fromastro.config.mjs