Commands
Every management command.
Run a command with ssh cd.pico.sh <command>. help lists them, and
help <command> shows one:
1ssh cd.pico.sh help
2ssh cd.pico.sh help vars
Projects #
| Command | |
|---|---|
projects |
List your projects, then the ones shared with you |
create <project> |
Create a project, ready for its first push |
status [project] |
Show a project's branch, variables, and containers |
endpoints |
List the URLs and published ports of your running apps, across your projects. Ports show on your public IPv6 address |
logs [project] [service...] [-f] |
Show a project's logs; -f follows them |
redeploy [project] [--force] |
Deploy a project again without a push. If you've changed its checkout by hand, it's skipped unless you pass --force, which discards those changes |
branch [project] |
Show the branch a project deploys |
branch set [project] <branch> |
Deploy another branch, now and on later pushes |
compose [project] <args...> |
Run docker compose in a project |
down [project] [--volumes] |
Remove a project's containers, and its volumes with --volumes. The repository, branch, and variables stay |
delete [project] --confirm <project> |
Delete a project for good: its containers, volumes, repository, checkout, and variables |
Environment variables #
| Command | |
|---|---|
vars [project] |
List a project's variable names |
vars set [project] KEY=VAL... |
Set variables, applied on the next deploy. Creates the project if it doesn't exist yet |
vars unset [project] KEY... |
Unset variables, applied on the next deploy |
Upstreams #
| Command | |
|---|---|
upstream [project] |
Show a project's upstream, deploy key, webhook, and last webhook deploy |
upstream set <project> <url> |
Mirror a project from a git provider, deploying on its webhook. Creates the project if needed |
upstream sync [project] |
Fetch a project's upstream and deploy it now |
upstream unset [project] |
Stop mirroring a project. Its repository keeps what it fetched |
See deploying from GitHub, GitLab, and Forgejo.
Sharing #
| Command | |
|---|---|
share [project] [<user>... | --everyone] |
Let users clone a project and see its status, or show who can |
unshare [project] <user>... | --everyone |
Stop sharing a project |
See sharing projects.
Custom domains #
| Command | |
|---|---|
domains |
List your custom domains |
domains add <domain> |
Route a domain whose _picd TXT record names you |
domains rm <domain> |
Stop routing a domain |
See domains and HTTPS.
Account #
| Command | |
|---|---|
whoami |
Show the account you're logged in as, whose projects you're acting on, and your role there |
plan |
Show your plan's limits, and how many projects and custom domains you have |
ipv6 |
Show your environment's public IPv6 address |
restart |
Restart your environment when it's stuck, keeping your data. Ends your shells and restarts your apps |
shutdown [--confirm [--delete]] |
Stop your environment and its apps until you next use them, keeping your data. Without --confirm it only says what it would do |
home reset |
Reset your home directory to picd's latest default |
help [command] |
Show the commands, or one command's |
The project argument #
[project] defaults to the SSH user, so these are the same:
1ssh cd.pico.sh status web
2ssh web@cd.pico.sh status
Name another owner's project ~<owner>/<project>, quoted, such as
status '~pico/pgs'. See sharing projects.
Shells #
Anything that isn't a command above runs in your environment. The SSH user picks where:
| SSH user | |
|---|---|
<project> |
Run a command, or open a shell, in a project |
c-<container> |
Run a command, or open a shell, in a container |
l-<container> |
Follow a container's logs |
a-<container> |
Attach to a container |
| Anything else | Run a command, or open a shell, in your projects directory |
~<owner>/<any of these> |
The same, in a team's environment |
See shells and logs.
<< PREV
Getting started
NEXT >>
Pushing projects