xCloud Docker Deploy
"Deploy any project to xCloud hosting β auto-detects stack (WordPress, Laravel, PHP, Node.js, Next.js, NestJS, Python, Go, Rust), routes to native or Docker deployment, generates production-ready Dockerfile, docker-compose.yml, GitHub Actions CI/CD,
Free to install β no account needed
Copy the command below and paste into your agent.
Instant access β’ No coding needed β’ No account needed
What you get in 5 minutes
- Full skill code ready to install
- Works with 5 AI agents
- Lifetime updates included
Description
--- name: xcloud-docker-deploy description: "Deploy any project to xCloud hosting β auto-detects stack (WordPress, Laravel, PHP, Node.js, Next.js, NestJS, Python, Go, Rust), routes to native or Docker deployment, generates production-ready Dockerfile, docker-compose.yml, GitHub Actions CI/CD, and .env.example. Works from zero Docker setup." license: Apache-2.0 version: "1.2.0" author: "M Asif Rahman" homepage: "https://github.com/Asif2BD/xCloud-Docker-Deploy-Skill" repository: "https://github.com/Asif2BD/xCloud-Docker-Deploy-Skill" tags: - docker - deployment - devops - xcloud - docker-compose - github-actions - wordpress - laravel - nextjs - nodejs - python - ci-cd - hosting - infrastructure category: "DevOps & Deployment" platforms: - claude-code - openClaw - claude-ai - cursor - windsurf - codex - any security: verified: true no_network_calls: true no_executables: true sandboxed: true install: | # Claude Code / Codex CLI cp -r xcloud-docker-deploy ~/.claude/skills/ # OpenClaw # Drop skill folder into agent workspace skills/ --- # xCloud Docker Deploy Adapt any `docker-compose.yml` to work with [xCloud](https://xcloud.host) β a git-push Docker deployment platform. ## How xCloud Works ``` git push β xCloud runs: docker-compose pull && docker-compose up -d ``` **xCloud never runs `docker build`.** Images must be pre-built in a public registry. SSL, reverse proxy, and domain routing are handled by xCloud β your stack must not duplicate them. Read `references/xcloud-constraints.md` for the full ruleset before making changes. --- ## Phase 0 β Detect Project Type First **Before anything else, scan the project directory for these files:** Read `DETECT.md` for full detection rules. Quick routing: | Found in project | Stack | Action | |---|---|---| | `wp-config.php` or `wp-content/` | WordPress | Read `references/xcloud-native-wordpress.md` | | `composer.json` + `artisan` | Laravel | Read `references/xcloud-native-laravel.md` | | `package.json` + `next.config.*` | Next.js | Docker path β use `dockerfiles/nextjs.Dockerfile` + `compose-templates/nextjs-postgres.yml` | | `package.json` (no framework config) | Node.js | Read `references/xcloud-native-nodejs.md` | | `composer.json` (no artisan) | PHP | Read `references/xcloud-native-php.md` | | `requirements.txt` or `pyproject.toml` | Python | Docker path β use `dockerfiles/python-fastapi.Dockerfile` | | `go.mod` | Go | Docker path β generate Dockerfile manually | | `docker-compose.yml` exists | Existing Docker | Proceed to Step 1 below | | `Dockerfile` (no compose) | Build-from-source | Generate compose β Scenario A below | See `references/xcloud-deploy-paths.md` for the Native vs Docker decision guide. --- ## Step 1 β Detect Which Scenarios Apply Inspect the provided `docker-compose.yml`: | Signal | Scenario | |--------|----------| | `build:` or `build: context: .` | **A** β Build-from-source | | Caddy / Traefik / nginx-proxy service | **B** β Proxy conflict | | Multiple `ports:` across services | **B** β Multi-port | | `./nginx.conf:/etc/nginx/...` volume mount | **B** β External config | | Multiple services each with `build:` | **C** β Multi-service build | | `image: some-public-image`, single port | Already compatible β verify port + env vars | A compose file can trigger **multiple scenarios** simultaneously (handle A first, then B). --- ## Scenario A β Build-from-Source > Read `references/scenario-build-source.md` for full details. **What to do:** 1. Remove `build:` directive from compose 2. Replace `image:` with `ghcr.io/OWNER/REPO:latest` 3. Generate `.github/workflows/docker-build.yml` using `assets/github-actions-build.yml` template 4. Generate `.env.example` from all `${VAR}` references **Deliverables:** - Modified `docker-compose.yml` - `.github/workflows/docker-build.yml` - `.env.example` - xCloud Deploy Steps (see Output Format) --- ## Scenario B β Proxy Conflict / Multi-Port / External Config > Read `references/scenario-proxy-conflict.md` for full details. **What to do:** 1. Remove Caddy/Traefik/nginx-proxy service entirely 2. Remove SSL labels and multi-port `ports:` from app services (replace with `expose:`) 3. Add `nginx-router` service with inline config via `configs:` block 4. Expose single port (default: `3080`) for xCloud to proxy **Deliverables:** - Modified `docker-compose.yml` with `nginx-router` + `configs:` block - `.env.example` - xCloud Deploy Steps --- ## Scenario C β Multi-Service Build > Read `references/scenario-multi-service-build.md` for full details. When multiple services have `build:` directives (separate frontend + backend + worker): **What to do:** 1. For each service with `build:`, create a separate GHCR image path 2. Generate a matrix GitHub Actions workflow that builds all images in parallel 3. Update compose to use all GHCR image references **Deliverables:** - Modified `docker-compose.yml` (all `build:` removed) - `.github/workflows/docker-build.yml` (matrix strategy) - `.env.example` --- ## Output Format Always produce complete, copy-paste-ready output: ``` ## Modified docker-compose.yml [full file] ## .github/workflows/docker-build.yml (Scenario A/C only) [full file] ## .env.example [full file] ## xCloud Deploy Steps 1. Push repo to GitHub 2. (Scenario A/C) Wait for GitHub Actions to build image β check Actions tab 3. Server β New Site β Custom Docker β connect repo 4. Exposed port: [PORT] 5. Env vars to add: [list from .env.example] 6. Deploy ``` --- ## Rules - **Never** include `build:` in the final compose β xCloud silently ignores it - **Never** expose database ports to host (remove `"5432:5432"` β use `expose:` internally) - **Never** include Caddy, Traefik, nginx-proxy, or Let's Encrypt config - **Always** preserve `environment:`, `volumes:`, `healthcheck:`, worker/sidecar services - **Always** use `expose:` (internal) not `ports:` (host) for services behind nginx-router - **WebSockets?** Add upgrade headers to nginx config (see proxy-conflict reference) - `configs.content:` inline syntax requires Docker Compose v2.23+ β use heredoc `command:` alternative if uncertain --- ## Examples See `examples/` for ready-made transformations: - `examples/rybbit-analytics.md` β Caddy + multi-port app (Scenario B) - `examples/custom-app-dockerfile.md` β build-from-source (Scenario A) - `examples/fullstack-monorepo.md` β multi-service build (Scenario C)
Security Status
Unvetted
Not yet security scanned
Related AI Tools
More Grow Business tools you might like
Clawra Selfie
FreeEdit Clawra's reference image with Grok Imagine (xAI Aurora) and send selfies to messaging channels via OpenClaw
Agent Skills for Context Engineering
FreeA comprehensive collection of Agent Skills for context engineering, multi-agent architectures, and production agent systems. Use when building, optimizing, or debugging agent systems that require effective context management.
Terraform Skill for Claude
FreeUse when working with Terraform or OpenTofu - creating modules, writing tests (native test framework, Terratest), setting up CI/CD pipelines, reviewing configurations, choosing between testing approaches, debugging state issues, implementing security
NotebookLM Research Assistant Skill
FreeUse this skill to query your Google NotebookLM notebooks directly from Claude Code for source-grounded, citation-backed answers from Gemini. Browser automation, library management, persistent auth. Drastically reduced hallucinations through document-
Engineering Advanced Skills (POWERFUL Tier)
Free"25 advanced engineering agent skills and plugins for Claude Code, Codex, Gemini CLI, Cursor, OpenClaw. Agent design, RAG, MCP servers, CI/CD, database design, observability, security auditing, release management, platform ops."
Clawra Selfie
FreeEdit Clawra's reference image with Grok Imagine (xAI Aurora) and send selfies to messaging channels via OpenClaw