CLI Overview
Quick Start Guide
wheels info
wheels reload
wheels deps
wheels destroy
wheels watch
wheels generate app
wheels generate app-wizard
wheels generate controller
wheels generate model
wheels generate view
wheels generate property
wheels generate route
wheels generate resource
wheels generate api-resource
wheels generate frontend
wheels generate test
wheels generate snippets
wheels scaffold
wheels db create
wheels db drop
wheels db setup
wheels db reset
wheels db status
wheels db version
wheels db rollback
wheels db seed
wheels db dump
wheels db restore
wheels db shell
wheels db schema
wheels dbmigrate info
wheels dbmigrate latest
wheels dbmigrate up
wheels dbmigrate down
wheels dbmigrate reset
wheels dbmigrate exec
wheels dbmigrate create blank
wheels dbmigrate create table
wheels dbmigrate create column
wheels dbmigrate remove table
wheels test
wheels test run
wheels test coverage
wheels test debug
wheels config list
wheels config set
wheels config env
wheels env
wheels env setup
wheels env list
wheels env switch
wheels environment
wheels console
wheels runner
wheels server
wheels server start
wheels server stop
wheels server restart
wheels server status
wheels server log
wheels server open
wheels plugins
wheels plugins list
wheels plugins install
wheels plugins remove
wheels analyze
wheels analyze code
wheels analyze performance
wheels analyze security
wheels security
wheels security scan
wheels optimize
wheels optimize performance
wheels docs
wheels docs generate
wheels docs serve
wheels ci init
wheels docker init
wheels docker deploy
wheels deploy
wheels deploy audit
wheels deploy exec
wheels deploy hooks
wheels deploy init
wheels deploy lock
wheels deploy logs
wheels deploy proxy
wheels deploy push
wheels deploy rollback
wheels deploy secrets
wheels deploy setup
wheels deploy status
wheels deploy stop
Configuration Management
Creating Commands
Service Architecture
Migrations Guide
Testing Guide
Object Relational Mapping
Creating Records
Reading Records
Updating Records
Deleting Records
Column Statistics
Dynamic Finders
Getting Paginated Data
Associations
Nested Properties
Object Validation
Object Callbacks
Calculated Properties
Transactions
Dirty Records
Soft Delete
Automatic Time Stamps
Using Multiple Data Sources
wheels docker init
This command works correctly without options (parameters). Option support is under development and will be available soon.
Initialize Docker configuration for your Wheels application.
Synopsis
wheels docker init [options]
Description
The wheels docker init
command creates Docker configuration files for containerizing your Wheels application. It generates a Dockerfile
, docker-compose.yml
, and supporting configuration files optimized for Wheels applications.
Options
| Option | Description | Default |
|--------|-------------|---------|
| --engine
| CFML engine (lucee5, lucee6, adobe2018, adobe2021, adobe2023) | lucee6
|
| --database
| Database system (mysql, postgresql, sqlserver, none) | mysql
|
| --port
| Application port | 8080
|
| --with-nginx
| Include Nginx reverse proxy | false
|
| --with-redis
| Include Redis for caching | false
|
| --production
| Generate production-ready configuration | false
|
| --force
| Overwrite existing Docker files | false
|
| --help
| Show help information |
Examples
Basic initialization
wheels docker init
Initialize with Adobe ColdFusion
wheels docker init --engine=adobe2023
Production setup with Nginx
wheels docker init --production --with-nginx --port=80
Initialize with PostgreSQL
wheels docker init --database=postgresql
Full stack with Redis
wheels docker init --with-nginx --with-redis --database=postgresql
What It Does
-
Creates Dockerfile optimized for CFML applications:
- Base image selection based on engine
- Dependency installation
- Application file copying
- Environment configuration
-
Generates docker-compose.yml with:
- Application service
- Database service (if selected)
- Nginx service (if selected)
- Redis service (if selected)
- Network configuration
- Volume mappings
-
Additional files:
.dockerignore
- Excludes unnecessary filesdocker-entrypoint.sh
- Container startup script- Configuration files for selected services
Generated Files
Dockerfile Example
FROM ortussolutions/commandbox:lucee5
# Set working directory
WORKDIR /app
# Copy application files
COPY . /app
# Install dependencies
RUN box install
# Expose port
EXPOSE 8080
# Start server
CMD ["box", "server", "start", "--console"]
docker-compose.yml Example
version: '3.8'
services:
app:
build: .
ports:
- "8080:8080"
environment:
- WHEELS_ENV=development
- DB_HOST=database
depends_on:
- database
volumes:
- ./:/app
database:
image: mysql:8.0
environment:
- MYSQL_ROOT_PASSWORD=wheels
- MYSQL_DATABASE=wheels_app
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
Configuration Options
Development Mode
- Hot reload enabled
- Source code mounted as volume
- Debug ports exposed
- Development databases
Production Mode
- Optimized image size
- Security hardening
- Health checks
- Restart policies
- Resource limits
Use Cases
- Local Development: Consistent development environment across team
- Testing: Isolated test environments with different configurations
- CI/CD: Containerized testing in pipelines
- Deployment: Production-ready containers for cloud deployment
Environment Variables
Common environment variables configured:
| Variable | Description |
|----------|-------------|
| WHEELS_ENV
| Application environment |
| WHEELS_DATASOURCE
| Database connection name |
| DB_HOST
| Database hostname |
| DB_PORT
| Database port |
| DB_NAME
| Database name |
| DB_USER
| Database username |
| DB_PASSWORD
| Database password |
Notes
- Requires Docker and Docker Compose installed
- Database passwords are set to defaults in development
- Production configurations should use secrets management
- The command detects existing Docker files and prompts before overwriting
See Also
- wheels docker deploy - Deploy using Docker
- wheels deploy - General deployment commands
- wheels ci init - Initialize CI configuration
- Synopsis
- Options
- Examples
- Basic initialization
- Initialize with Adobe ColdFusion
- Production setup with Nginx
- Initialize with PostgreSQL
- Full stack with Redis
- What It Does
- Generated Files
- Dockerfile Example
- docker-compose.yml Example
- Configuration Options
- Development Mode
- Production Mode
- Use Cases
- Environment Variables
- Notes
- See Also