我已经将Gatsby设置为可在docker容器中工作,并且除了热重载外,它的运行情况都很好。
我尝试了类似gatsby develop --host 0.0.0.0 --port 8080
的操作,但没有进行热重装。我必须手动重新启动容器。任何提示将非常有帮助。预先感谢。
答案 0 :(得分:1)
在文件docker-compose中,必须包含以下环境变量:
docker-compose.yml
version: '3'
services:
gatsby-app:
build:
context: ./
dockerfile: Dockerfile
image: gatsby-app
container_name: gatsby-app
working_dir: /app
volumes:
- /app/node_modules
- ./app:/app
ports:
- 80:8000
- 81:9000
environment:
- NODE_ENV=development
- GATSBY_WEBPACK_PUBLICPATH=/
- CHOKIDAR_USEPOLLING=1
您的DockerFile文件必须为:
Dockerfile
from node:latest
EXPOSE 8000
RUN npm install -g gatsby-cli yarn
WORKDIR /app
COPY ./app/package.json .
RUN yarn install && yarn cache clean
CMD ["yarn", "develop", "-H", "0.0.0.0", "-p", "8000"]