Skip to content

Deploy to Dev

The normal dev deployment path is a local container build followed by gwebc deploy push.

1. Confirm environment

bash
gwebc --profile <profile> environment show dev

The environment must allow mutation.

2. Confirm application

bash
gwebc --profile <profile> app show <application>

Confirm that the application is managed by the expected tenant and environment.

3. Inspect the plan

bash
gwebc --profile <profile> \
  deploy plan <application> \
  --environment dev

The plan should show that the requested action is allowed for the current tenant identity and environment.

4. Build locally

bash
docker build \
  --platform linux/amd64 \
  -t <application>:dev .

Use the architecture required by the target GWEB runtime. For the current documented K3s tenant path, linux/amd64 is the standard build target unless GWEB specifies otherwise.

5. Push through GWEB

bash
gwebc --profile <profile> \
  deploy push <application> \
  --environment dev \
  --local-image <application>:dev \
  --replicas <replicas> \
  --port <container-port>

gwebc uploads the local image to the GWEB deployment service. GWEB imports it into the tenant's managed internal repository and applies the resulting immutable internal image reference to the managed workload.

The tenant does not need:

  • kubectl;
  • a kubeconfig;
  • SSH access to cluster nodes;
  • GWEB internal-registry credentials;
  • Kubernetes imagePullSecrets for the GWEB-managed internal image.

6. Verify rollout

bash
gwebc --profile <profile> \
  deploy show <application> \
  --environment dev

gwebc --profile <profile> \
  deploy history <application> \
  --environment dev

gwebc --profile <profile> \
  app diagnostics <application> \
  --environment dev

Treat the verified rollout result as authoritative rather than assuming command acceptance alone means the newest revision became healthy.

A healthy service can continue to report available/ready replicas from an older ReplicaSet while a newer revision is still pending. Confirm that the newest revision is Ready before considering the rollout complete.

Advanced: deploy an existing registry image

If GWEB has already authorized and can pull an immutable external or internal registry reference, deploy apply --image can be used:

bash
gwebc --profile <profile> \
  deploy apply <application> \
  --environment dev \
  --image <registry>/<repository>@sha256:<digest>

This is not the default local developer workflow. A private external image that the cluster cannot authenticate to can produce ImagePullBackOff; use deploy push --local-image for the normal local-image path.

GWEB K3s Cloud documentation