- Reverted to Dockerfile deployment (from nixpacks) - Created Thai legal document templates (PDPA compliant) - Privacy Policy template (Thai law) - Terms of Service template (Thai Consumer Protection Act) - Updated cookie consent to actually block/enable cookies - Added template folder structure - All templates research-based from major Thai company websites Compliance: - Thai PDPA (Personal Data Protection Act B.E. 2562) - Thai Consumer Protection Act - Thai Computer Crime Act
4.1 KiB
4.1 KiB
🚀 Nixpacks Integration - Complete
Date: 2026-03-09
Status: ✅ Complete - Nixpacks is now default
🎯 What Changed
Before:
- Easypanel deployment required Dockerfile
- Users needed to maintain Docker configuration
- More complex deployment setup
After:
- ✅ Nixpacks is now the default build type
- ✅ No Dockerfile needed
- ✅ Astro projects auto-detected
- ✅ Simpler deployment
📝 Technical Details
Updated File:
skills/easypanel-deploy/scripts/deploy.py
Changes:
Old Code:
def create_service(project_name, service_name, token):
data = {"json": {"build": {"type": "dockerfile", "file": "Dockerfile"}}}
New Code:
def create_service(project_name, service_name, token):
data = {"json": {"build": {"type": "nixpacks"}}}
🎉 Benefits
1. No Dockerfile Required
- Astro projects automatically detected
- Nixpacks analyzes package.json and configures build automatically
2. Automatic Build Detection
Nixpacks automatically detects:
- ✅ Node.js/Astro projects
- ✅ Python projects
- ✅ Static sites
- ✅ And 30+ other frameworks
3. Simpler Configuration
No need to maintain:
- ❌ Dockerfile
- ❌ docker-compose.yml
- ❌ Build configuration
4. Faster Deployment
- Nixpacks optimizes build cache
- Faster builds than traditional Docker
🚀 How It Works
When You Create a Website:
python3 create_astro_website.py --name "My Site" --output "./my-site"
Deployment Flow:
- ✅ Website created with Astro
- ✅ Pushed to Gitea
- ✅ Easypanel service created with nixpacks build type
- ✅ Nixpacks analyzes package.json
- ✅ Automatically builds with correct Node.js version
- ✅ Deploys to production
No Dockerfile needed!
📊 Nixpacks vs Dockerfile
| Feature | Nixpacks | Dockerfile |
|---|---|---|
| Configuration | Automatic | Manual |
| Maintenance | None | Required |
| Build Speed | Fast (cached) | Slower |
| Complexity | Simple | Complex |
| Astro Support | ✅ Auto-detected | Manual setup |
🎯 For Users
No Changes Needed!
If you're using the website-creator skill:
- ✅ Everything works the same
- ✅ Just run the skill as usual
- ✅ Nixpacks handles everything automatically
Example Usage:
# Create website - now uses nixpacks automatically!
python3 ~/.config/opencode/skills/website-creator/scripts/create_astro_website.py \
--name "My Website" \
--output "./my-website"
# That's it! No Dockerfile configuration needed.
🔧 For Developers
Easypanel Deploy Skill:
# Deploy with nixpacks (default)
python3 ~/.config/opencode/skills/easypanel-deploy/scripts/deploy.py \
--project "my-project" \
--service "my-service" \
--git-url "https://git.moreminimore.com/user/repo.git"
Automatically uses nixpacks build type!
📦 What Nixpacks Detects
For Astro projects, nixpacks automatically:
- ✅ Detects
package.json - ✅ Installs correct Node.js version
- ✅ Runs
npm install - ✅ Runs
npm run build - ✅ Serves static files
No configuration needed!
✅ Testing
All skills tested and working:
- ✅ website-creator - Creates Astro projects
- ✅ easypanel-deploy - Deploys with nixpacks
- ✅ gitea-sync - Pushes to Gitea
- ✅ All integrations working
📝 Migration
Existing Websites with Dockerfile:
If you have existing websites with Dockerfile:
- ✅ No action needed - they continue to work
- ✅ Nixpacks is only for new deployments
- ✅ Existing deployments unaffected
New Websites:
All new websites automatically use nixpacks:
- ✅ No Dockerfile created
- ✅ Simpler deployment
- ✅ Faster builds
🎊 Summary
Before:
- Required Dockerfile
- Manual configuration
- More maintenance
After:
- ✅ Nixpacks default
- ✅ Zero configuration
- ✅ Automatic detection
- ✅ Faster deployment
🚀 Nixpacks integration complete! 🎉