Installation
Start Shipped with Docker
Run the following command to start Shipped:Shipped will be available at
http://localhost:3000Create the config directory
Create the configuration directory that will hold your package lists:Or, if using a bind mount:
Add your first package list
Create a Or create the file directly if using a bind mount:
lists.yaml file in the config directory to define which packages to track:/path-to-data/config/lists.yaml
View your tracked packages
Open
http://localhost:3000 in your browser. You should see:- A list titled “My Packages” in the header navigation
- The “Frontend Tools” group with Vue.js releases from both GitHub and NPM
- Latest release versions with links to the official releases
Add More Packages
Edit yourlists.yaml to track additional packages:
Customize Provider Settings
Create aproviders.yaml file to configure provider-specific defaults:
/data/config/providers.yaml
lists.yaml.
Configure the UI
Create aui.yaml file to customize the interface:
/data/config/ui.yaml
Enable Real-Time Updates
Create ageneral.yaml file to enable config streaming:
/data/config/general.yaml
Understanding Package Providers
Shipped supports multiple package providers with different naming formats:| Provider | Name Format | Example |
|---|---|---|
| GitHub | owner/repo | vuejs/vue |
| NPM | package name | vue, @types/react |
| Docker | image or namespace/image | postgres, library/nginx |
| Python | package name | django, fastapi |
Smart Caching
Shipped automatically caches package data to minimize API calls:- L1 Memory Cache: Fast in-memory storage (default: 50MB, 2000 items)
- L2 File Cache: Persistent storage in
/data/cache(default: 3 hours TTL)
Troubleshooting
Packages not showing up
Packages not showing up
- Check that
lists.yamlis in the correct location (/data/config/lists.yaml) - Verify YAML syntax is valid (use a YAML validator)
- Check Docker logs:
docker logs shipped - Ensure package names use the correct format for each provider
Configuration changes not applying
Configuration changes not applying
- Shipped watches config files automatically - no restart needed
- If using network volumes, set
SERVER_CONFIG_WATCH_POLLING=true - Check logs for file watching errors
Rate limiting errors
Rate limiting errors
- GitHub: Set a GitHub token in
providers.yamlfor higher rate limits - Adjust cache TTL to reduce API calls
- Reduce
SERVER_PACKAGES_FETCH_CONCURRENCYfrom default 10
Next Steps
Configuration Files
Complete YAML configuration reference
Providers
Learn about all supported providers
Docker Compose
Production-ready Docker Compose setup
Environment Variables
Complete environment variable reference