apollo-server/docs/source/deployment/now.md
Vince Picone 11f0383384 Add npm start script to now setup (#1276)
The package.json requires a start script, copying as is gives an error in now CLI: `> Error! Missing `start` (or `now-start`) script in `package.json`. See: https://docs.npmjs.com/cli/start`
2018-07-02 14:07:19 -07:00

1.7 KiB

title sidebar_title description
Deploying with Zeit Now Now Deploying your GraphQL server to Zeit Now

Now is a service by Zeit that allows the deployment of an instance of Apollo Server, which provides a functional GraphQL endpoint.

Node.js Deployment

Deployment to Now for Node.js apps simply requires a package.json file to be present in your app directory.

{
  "name": "graphqlservice",
  "version": "1.0.0",
  "scripts": {
    "start": "nodemon index.js"
  },
  "dependencies": {
    "apollo-server": "^2.0.0-rc.5",
    "graphql": "^0.13.2",
    "nodemon": "^1.17.5"
  }
}

Deploy server to Now

Install the now CLI, then visit your server directory and run the now command:

$ now

The now command immediately deploys your server to the cloud and returns the hosted project link. Send a query to your GraphQL server on now at <NOW_APP_NAME>.now.sh.

Deploying directly from GitHub

If you have your GraphQL server published to GitHub, Now provides the ability to deploy straight from GitHub to the cloud.

Assuming you'd like to deploy an instance of apollo's graphql-server-example, this is what you'll do:

$ now apollographql/graphql-server-example

The now command deploys right away and gets the server up and running on the cloud. Furthermore, running the following command will automatically start delivering reports to Apollo Engine.

$ now -e ENGINE_API_KEY=xxxxxxxxx apollographql/graphql-server-example
![Deployed GraphQL Server](../images/deployment/zeit/zeit-apollo-server.png)