Update deployment steps
This commit is contained in:
11
.github/workflows/sync-quickstart.yaml
vendored
11
.github/workflows/sync-quickstart.yaml
vendored
@@ -23,17 +23,12 @@ jobs:
|
||||
token: ${{ secrets.QUICKSTART_SYNC_TOKEN }}
|
||||
path: quickstart-repo
|
||||
|
||||
- name: Sync files (excluding READMEs)
|
||||
- name: Sync files (excluding uv.lock and README.md)
|
||||
run: |
|
||||
# Copy code files only, skip READMEs
|
||||
cp examples/quickstart/bot.py quickstart-repo/
|
||||
cp examples/quickstart/requirements.txt quickstart-repo/
|
||||
cp examples/quickstart/env.example quickstart-repo/
|
||||
|
||||
# Copy any other files that aren't README.md
|
||||
# Copy all files except uv.lock and README.md
|
||||
find examples/quickstart -type f \
|
||||
-not -name "README.md" \
|
||||
-not -name "*.md" \
|
||||
-not -name "uv.lock" \
|
||||
-exec cp {} quickstart-repo/ \;
|
||||
|
||||
- name: Commit and push changes
|
||||
|
||||
@@ -1,7 +1,16 @@
|
||||
FROM dailyco/pipecat-base:latest
|
||||
|
||||
COPY ./requirements.txt requirements.txt
|
||||
# Enable bytecode compilation
|
||||
ENV UV_COMPILE_BYTECODE=1
|
||||
|
||||
RUN pip install --no-cache-dir --upgrade -r requirements.txt
|
||||
# Copy from the cache instead of linking since it's a mounted volume
|
||||
ENV UV_LINK_MODE=copy
|
||||
|
||||
# Install the project's dependencies using the lockfile and settings
|
||||
RUN --mount=type=cache,target=/root/.cache/uv \
|
||||
--mount=type=bind,source=uv.lock,target=uv.lock \
|
||||
--mount=type=bind,source=pyproject.toml,target=pyproject.toml \
|
||||
uv sync --locked --no-install-project --no-dev
|
||||
|
||||
# Copy the application code
|
||||
COPY ./bot.py bot.py
|
||||
|
||||
@@ -10,12 +10,12 @@ Build and deploy your first voice AI bot in under 10 minutes. Develop locally, t
|
||||
|
||||
### Prerequisites
|
||||
|
||||
### Environment
|
||||
#### Environment
|
||||
|
||||
- Python 3.10 or later
|
||||
- [uv](https://docs.astral.sh/uv/getting-started/installation/) package manager installed
|
||||
|
||||
### AI Service API keys
|
||||
#### AI Service API keys
|
||||
|
||||
You'll need API keys from three services:
|
||||
|
||||
@@ -32,13 +32,7 @@ Navigate to the quickstart directory and set up your environment.
|
||||
1. Install dependencies:
|
||||
|
||||
```bash
|
||||
uv sync --extra webrtc \
|
||||
--extra daily \
|
||||
--extra silero \
|
||||
--extra deepgram \
|
||||
--extra openai \
|
||||
--extra cartesia \
|
||||
--extra runner
|
||||
uv sync
|
||||
```
|
||||
|
||||
2. Configure your API keys:
|
||||
@@ -75,11 +69,11 @@ uv run bot.py
|
||||
|
||||
Transform your local bot into a production-ready service. Pipecat Cloud handles scaling, monitoring, and global deployment.
|
||||
|
||||
[Sign up for Pipecat Cloud](https://pipecat.daily.co/sign-up).
|
||||
|
||||
### Prerequisites
|
||||
|
||||
1. Install the Pipecat Cloud CLI:
|
||||
1. [Sign up for Pipecat Cloud](https://pipecat.daily.co/sign-up).
|
||||
|
||||
2. Install the Pipecat Cloud CLI:
|
||||
|
||||
```bash
|
||||
uv add pipecatcloud
|
||||
@@ -87,7 +81,7 @@ Transform your local bot into a production-ready service. Pipecat Cloud handles
|
||||
|
||||
> 💡 Tip: You can run the `pipecatcloud` CLI using the `pcc` alias.
|
||||
|
||||
2. Set up Docker for building your bot image:
|
||||
3. Set up Docker for building your bot image:
|
||||
|
||||
- **Install [Docker](https://www.docker.com/)** on your system
|
||||
- **Create a [Docker Hub](https://hub.docker.com/) account**
|
||||
@@ -99,9 +93,7 @@ Transform your local bot into a production-ready service. Pipecat Cloud handles
|
||||
|
||||
### Configure your deployment
|
||||
|
||||
#### Understanding pcc-deploy.toml
|
||||
|
||||
The `pcc-deploy.toml` file tells Pipecat Cloud how to run your bot. Let's look at what each setting does:
|
||||
The `pcc-deploy.toml` file tells Pipecat Cloud how to run your bot. **Update the image field** with your Docker Hub username by editing `pcc-deploy.toml`.
|
||||
|
||||
```ini
|
||||
agent_name = "quickstart"
|
||||
@@ -112,9 +104,7 @@ secret_set = "quickstart-secrets"
|
||||
min_agents = 1
|
||||
```
|
||||
|
||||
> ✋ **Update the image field** with your Docker Hub username by editing pcc-deploy.toml.
|
||||
|
||||
**Key settings:**
|
||||
**Understanding the TOML file settings:**
|
||||
|
||||
- `agent_name`: Your bot's name in Pipecat Cloud
|
||||
- `image`: The Docker image to deploy (format: `username/image:version`)
|
||||
|
||||
@@ -16,7 +16,7 @@ Required AI services:
|
||||
|
||||
Run the bot using::
|
||||
|
||||
python bot.py
|
||||
uv run bot.py
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
19
examples/quickstart/pyproject.toml
Normal file
19
examples/quickstart/pyproject.toml
Normal file
@@ -0,0 +1,19 @@
|
||||
[project]
|
||||
name = "pipecat-quickstart"
|
||||
version = "0.1.0"
|
||||
description = "Quickstart example for building voice AI bots with Pipecat"
|
||||
requires-python = ">=3.10"
|
||||
dependencies = [
|
||||
"pipecat-ai[webrtc,daily,silero,deepgram,openai,cartesia,runner]>=0.0.79",
|
||||
"pipecatcloud>=0.2.3"
|
||||
]
|
||||
|
||||
[dependency-groups]
|
||||
dev = [
|
||||
"ruff~=0.12.1",
|
||||
]
|
||||
|
||||
[tool.ruff]
|
||||
line-length = 100
|
||||
[tool.ruff.lint]
|
||||
select = ["I"]
|
||||
@@ -1,2 +0,0 @@
|
||||
pipecat-ai[webrtc,websocket,daily,silero,deepgram,openai,cartesia,runner]>=0.0.77
|
||||
pipecatcloud>=0.2.1
|
||||
3148
examples/quickstart/uv.lock
generated
Normal file
3148
examples/quickstart/uv.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user