A worker job is always associated with a code service. This means that it runs out of the same codebase as the deploy job, but instead of running the
web Procfile target, it runs the target it was started with. To start a worker for the very first time (and only the first time), run the CLI’s worker command. After it’s launched for the first time, it will be redeployed automatically every time the service is redeployed.
Code services by default have an allowed worker count of zero - this means that no workers are allowed to be started. If your original contract did not include workers, but you find that you need some, contact Catalyze Support.
Aside from running a separate Procfile target and not binding to a port, workers function identically to deploy jobs - they have the same access to databases and caches. All logging output will end up in your Logging Dashboard. Note, however, that workers run in separate containers from your deploy jobs - if you need to share temporary files, read the Cloud Storage article.