Skip to content

tiennm99/tastyigniter-docker-compose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TastyIgniter Docker Compose

This repository contains a Docker Compose setup for TastyIgniter, making it easy to deploy on Coolify or any other Docker-compatible platform.

Features

  • PHP 8.3 with FPM
  • Nginx web server
  • MySQL 8 database
  • Queue worker for background jobs
  • Cron job for scheduled tasks
  • Persistent volumes for data storage
  • Health checks for all services
  • Environment variable configuration

Prerequisites

  • Docker
  • Docker Compose
  • Coolify (for deployment)

Quick Start

  1. Clone this repository:
git clone https://github.com/yourusername/tastyigniter-docker-compose.git
cd tastyigniter-docker-compose
  1. Copy the example environment file:
cp .env.example .env
  1. Edit the .env file with your configuration:
nano .env
  1. Start the containers:
docker-compose up -d

Deployment on Coolify

  1. Push this repository to your Git provider (GitHub, GitLab, etc.)

  2. In Coolify:

    • Create a new service
    • Select "Docker Compose" as the deployment method
    • Connect your Git repository
    • Set the following environment variables from the .env.example file
    • Deploy the service

Required Environment Variables

Make sure to set these environment variables in Coolify:

  • APP_KEY: Generate a random 32-character string
  • APP_URL: Your domain name
  • DB_PASSWORD: Secure database password
  • MYSQL_ROOT_PASSWORD: Secure root password
  • IGNITER_CARTE_KEY: Your TastyIgniter Carte key (if using)

Volume Management

The following volumes are automatically managed by Coolify:

  • dbdata: MySQL database data
  • tastyigniter: Application files
  • tastyigniter-storage: Application storage

Health Checks

The deployment includes health checks for:

  • Application container (PHP-FPM)
  • Nginx web server
  • MySQL database

Development

To run in development mode:

  1. Set APP_ENV=local in your .env file
  2. Set APP_DEBUG=true in your .env file
  3. Run docker-compose up -d

Maintenance

Database Backup

To backup the database:

docker-compose exec db mysqldump -u root -p tastyigniter > backup.sql

Logs

View logs for all services:

docker-compose logs -f

View logs for a specific service:

docker-compose logs -f app
docker-compose logs -f nginx
docker-compose logs -f db

Troubleshooting

  1. If the application fails to start:

    • Check the logs: docker-compose logs -f app
    • Verify environment variables are set correctly
    • Ensure all required ports are available
  2. If the database connection fails:

    • Check the database logs: docker-compose logs -f db
    • Verify database credentials in .env
    • Ensure the database container is running: docker-compose ps
  3. If the web server is not accessible:

    • Check nginx logs: docker-compose logs -f nginx
    • Verify port configuration in .env
    • Check if the domain is properly configured

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description or website provided.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published