Skip to main content

Usage

Description

Packages your crew and deploys it to Crewship, or builds a local Docker image for testing. Remote deploy (default):
  1. Packages your project into a tarball
  2. Initializes a deployment (or uses existing one based on project name)
  3. Creates a new version
  4. Uploads the build context to Crewship
Local deploy (--local):
  1. Builds a Docker image locally using the base Crewship image
  2. Optionally runs the container

Options

Examples

Deploy to Crewship

Deploy a specific directory

Build and test locally

Build and run locally

Run on a custom port

Deploy a named deployment (multi-deployment)

If your crewship.toml has multiple [deployments.<name>] sections and you omit --name, the CLI prompts you to select one interactively.

Output

Remote Deploy

A successful remote deployment shows:

Local Deploy

A successful local build shows:

Requirements

Your project must have:
  • crewship.toml in the project root with a [deployment] or [deployments.<name>] section
  • A valid entrypoint pointing to your crew’s kickoff function
  • pyproject.toml for dependencies (installed via uv pip install -e .)

Single deployment

crewship.toml

Multiple deployments

crewship.toml
See the crewship.toml reference for details.

Build Process

For local builds, Crewship generates a Dockerfile based on your configuration:
You don’t need to write a Dockerfile. Crewship generates one based on your crewship.toml.

Excluding Files

By default, the following files and directories are excluded from the build:
  • .git, .gitignore
  • .env, .env.*
  • .venv, venv
  • __pycache__, *.pyc, *.pyo
  • .pytest_cache, .mypy_cache, .ruff_cache
  • node_modules
  • .DS_Store, Thumbs.db
  • *.egg-info, dist, build
  • .idea, .vscode
  • *.log
  • Dockerfile, .dockerignore
To exclude additional files, add them to your crewship.toml:
crewship.toml

Troubleshooting

”crewship.toml not found”

Make sure you’re in the project root directory and have a crewship.toml file. Run crewship init to create one.

”Not logged in”

Run crewship login to authenticate before deploying to Crewship.

”Missing deployment.framework” or “Missing deployment.entrypoint”

Your crewship.toml must have a [deployment] or [deployments.<name>] section with both framework and entrypoint:

“No organizations found”

Create an organization in the Console before deploying.

”Session expired”

Your login session has expired. Run crewship login again.

Local build: “Base image not found”

For local builds, the CLI will attempt to build the base image automatically. If this fails, ensure Docker is running and you have access to the packages/runner-crewai directory.

Configuration

Configure your deployment

Environment Variables

Set secrets before deploying