rsnext/examples/with-docker-multi-env
Craig Wheeler 57426a2849
Update Examples to use React 18 (#42027)
This PR updates the minimum version of React used by examples from 17.0.2 to 18.2.0.

Fixes #41975

## Bug

- [x] Related issues linked using `fixes #41975`
- [ ] Integration tests added
- [ ] Errors have a helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have a helpful link attached, see `contributing.md`

## Documentation / Examples

- [x] Make sure the linting passes by running `pnpm build && pnpm lint`
- [x] The "examples guidelines" are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md)
2022-10-28 17:43:20 +00:00
..
docker chore(with-docker): don't copy package.json twice (#39896) 2022-08-24 09:35:44 -05:00
pages Open deploy link in new window for examples (#40804) 2022-09-22 09:33:36 -07:00
public [New Example] with docker - multiple deployment environments (#34015) 2022-02-05 18:13:01 +00:00
styles [New Example] with docker - multiple deployment environments (#34015) 2022-02-05 18:13:01 +00:00
.dockerignore Add .git to .dockerignore in docker examples (#34628) 2022-02-21 21:53:56 +01:00
.env [New Example] with docker - multiple deployment environments (#34015) 2022-02-05 18:13:01 +00:00
.env.development.sample [New Example] with docker - multiple deployment environments (#34015) 2022-02-05 18:13:01 +00:00
.env.production.sample [New Example] with docker - multiple deployment environments (#34015) 2022-02-05 18:13:01 +00:00
.env.staging.sample [New Example] with docker - multiple deployment environments (#34015) 2022-02-05 18:13:01 +00:00
.gitignore Update default gitignore templates (#39051) 2022-07-26 20:08:40 -05:00
Makefile [New Example] with docker - multiple deployment environments (#34015) 2022-02-05 18:13:01 +00:00
next.config.js [Docs] Add config types to all examples (#40083) 2022-08-31 16:41:22 -05:00
package.json Update Examples to use React 18 (#42027) 2022-10-28 17:43:20 +00:00
README.md Update pnpm create next-app for latest pnpm 6 and 7 (#37254) 2022-05-27 21:21:40 +00:00

With Docker - Multiple Deployment Environments

This examples shows how to use Docker with Next.js and deploy to multiple environment with different env values. Based on the deployment documentation.

How to use

Execute create-next-app with npm, Yarn, or pnpm to bootstrap the example:

npx create-next-app --example with-docker-multi-env nextjs-docker-multi-env
# or
yarn create next-app --example with-docker-multi-env nextjs-docker-multi-env
# or
pnpm create next-app --example with-docker-multi-env nextjs-docker-multi-env

Enter the values in the .env.development.sample, .env.staging.sample, .env.production.sample files to be used for each environments.

Using Docker and Makefile

Development environment - for doing testing

make build-development
make start-development

Open http://localhost:3001

Staging environment - for doing UAT testing

make build-staging
make start-staging

Open http://localhost:3002

Production environment - for users

make build-production
make start-production

Open http://localhost:3003

Running Locally

First, run the development server:

npm run dev
# or
yarn dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying pages/index.js. The page auto-updates as you edit the file.

API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.js.

The pages/api directory is mapped to /api/*. Files in this directory are treated as API routes instead of React pages.