Docker
Docker est un outil qui vous permet de créer, déployer et gérer des paquets légers et autonomes qui contiennent tout ce qui est nécessaire pour exécuter une application. Il peut aider à éviter les dépendances conflictuelles et les comportements indésirables lors de l'exécution de Docusaurus.
Run the local web server in docker
Assurez-vous d'avoir installé docker.
To run the local web server:
Build the docker image -- Enter the folder where you have Docusaurus installed. Run
docker build -t docusaurus-doc .
Once the build phase finishes, you can verify the image exists by running
docker images
.We now include a
Dockerfile
when you install Docusaurus.Run the Docusaurus container -- To start docker run
docker run --rm -p 3000:3000 docusaurus-doc
This will start a docker container with the image
docusaurus-doc
. To see more detailed container info rundocker ps
.
Use docker-compose
We can also use docker-compose
to configure our application. This feature of docker allows you to run the web server and any additional services with a single command.
Compose is a tool for defining and running multi-container Docker applications. With Compose, you use a YAML file to configure your application’s services. Then, with a single command, you create and start all the services from your configuration.
Using Compose is a three-step process:
Define your app’s environment with a Dockerfile so it can be reproduced anywhere.
Define the services that make up your app in
docker-compose.yml
so they can be run together in an isolated environment.Run
docker-compose up
and Compose starts and runs your entire app.
We include a basic docker-compose.yml
in your project:
version: "3"
services:
docusaurus:
build: .
ports:
- 3000:3000
- 35729:35729
volumes:
- ./docs:/app/docs
- ./website/blog:/app/website/blog
- ./website/core:/app/website/core
- ./website/i18n:/app/website/i18n
- ./website/pages:/app/website/pages
- ./website/static:/app/website/static
- ./website/sidebars.json:/app/website/sidebars.json
- ./website/siteConfig.js:/app/website/siteConfig.js
working_dir: /app/website
To run a local web server with docker-compose
run docker-compose up
.
To build static HTML pages for publishing run docker-compose run docusaurus bash -c 'yarn publish-gh-pages'