mirror of
https://github.com/enricoros/big-AGI.git
synced 2026-05-11 06:00:15 -07:00
47 lines
2.2 KiB
Markdown
47 lines
2.2 KiB
Markdown
# Deploying `big-AGI` with Docker
|
|
|
|
Utilize Docker containers to deploy the big-AGI application for an efficient and automated deployment process.
|
|
Docker ensures faster development cycles, easier collaboration, and seamless environment management.
|
|
|
|
## 🔧 Local Build & Deployment
|
|
|
|
1. **Clone big-AGI**
|
|
2. **Build the Docker Image**: Build a local docker image from the provided Dockerfile. The command is typically `docker build -t big-agi .`
|
|
3. **Run the Docker Container**: Start a Docker container using the built image with the command `docker run -d -p 3000:3000 big-agi`
|
|
|
|
> Note: If the Docker container is built without setting environment variables,
|
|
> the frontend UI will be unaware of them, despite the backend being able to use them at runtime.
|
|
> Therefore, ensure all necessary environment variables are set during the build process.
|
|
|
|
## Documentation
|
|
|
|
The big-AGI repository includes a Dockerfile and a GitHub Actions workflow for building and publishing a
|
|
Docker image of the application.
|
|
|
|
### Dockerfile: Containers
|
|
|
|
> A local build is recommended, as the 'ghcr' container is built without environment variables.
|
|
|
|
The [`Dockerfile`](../Dockerfile) is used to create a Docker image. It establishes a Node.js environment,
|
|
installs dependencies, and creates a production-ready version of the application as a local container.
|
|
|
|
### GitHub Actions workflow
|
|
|
|
The [`.github/workflows/docker-image.yml`](../.github/workflows/docker-image.yml) file automates the
|
|
building and publishing of the Docker images to the GitHub Container Registry (ghcr) when changes are
|
|
pushed to the `main` branch.
|
|
|
|
### Docker Compose
|
|
|
|
In addition, the repository also includes a `docker-compose.yaml` file, configured to run the pre-built
|
|
'ghcr image'. This file is used to define the `big-agi` service, the ports to expose, and the command to run.
|
|
|
|
If you have Docker Compose installed, you can run the Docker container with `docker-compose up`
|
|
to pull the Docker image (if it hasn't been pulled already) and start a Docker container. If you want to
|
|
update the image to the latest version, you can run `docker-compose pull` before starting the service.
|
|
|
|
```bash
|
|
docker-compose up -d
|
|
```
|
|
|
|
Leverage Docker's capabilities for a reliable and efficient big-AGI deployment. |