Portfolio Site: Visit 👀
My application using stack:
- PHP 8.5
- PHP-CLI
- SQLite3
- PDO SQLite
- msmtp
- Docker (Debian-based)
- Render
- zip - Archive handling
- mbstring - Multibyte string functions
- intl - Internationalization support
- pdo - PHP Data Objects
- pdo_sqlite - SQLite database driver
- opcache - Performance optimization
- curl
- unzip
- git
- libzip-dev
- libonig-dev
- libicu-dev
- sqlite3
Copy:
.env.example
to:
.env
cp .env.example .envThen configure SMTP credentials.
Run:
docker compose up --buildOpen:
http://localhost:10000The application uses a Debian-based PHP 8.5 CLI image for better compatibility and standard library support.
- Base image:
php:8.5-cli(Debian) - All PHP extensions pre-installed
- Composer dependency management
- Production-optimized build with
--no-devflag - Layer caching for faster rebuilds
docker build -t sushilkumar .docker run -p 10000:10000 sushilkumarSQLite database: storage/database.sqlite
Push the repository to GitHub.
Create a Render Web Service.
Render will detect:
render.yaml
The service uses:
- PHP 8.5
- CLI Server
- SQLite
- msmtp
The SQLite database is stored on a Render persistent disk.
Health check:
/health
Configure:
msmtprc
SMTP_HOST=gmail
SMTP_PORT=25
SMTP_USER= your name
SMTP_PASSWORD= password
SMTP_FROM= email