Docker untuk Codeigniter 3
Untuk menggunakan Docker dengan CodeIgniter 3, Anda perlu membuat Dockerfile dan docker-compose.yml. Berikut adalah contoh konfigurasi untuk keduanya:
1. Buatlah docker-compose.yml berikut:
1. Buatlah docker-compose.yml berikut:
version: "3" services: codeigniter-3: build: . ports: - "80:80" volumes: - .:/var/www/html depends_on: - db db: image: mysql:5.7 ports: - "3306:3306" restart: always environment: MYSQL_DATABASE: hotelku MYSQL_USER: freehost MYSQL_PASSWORD: freehost MYSQL_ROOT_PASSWORD: freehost command: --sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION volumes: - db_data:/var/lib/mysql phpmyadmin: image: phpmyadmin/phpmyadmin restart: always ports: - "8080:80" environment: PMA_HOST: db MYSQL_ROOT_PASSWORD: freehost depends_on: - db volumes: db_data:2. Buatlah Dockerfile berikut:
# Menggunakan image PHP 7.3 sebagai base image FROM php:7.3-apache # Install dependensi dan ekstensi PHP yang dibutuhkan untuk CodeIgniter RUN apt-get update && apt-get install -y \ libpng-dev \ libjpeg-dev \ libfreetype6-dev \ zip \ unzip # Install ekstensi GD dan mysqli RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \ && docker-php-ext-install gd mysqli # Aktifkan mod_rewrite untuk Apache RUN a2enmod rewrite # Copy kode CodeIgniter ke dalam container COPY . /var/www/html/ # Set direktori kerja WORKDIR /var/www/html/ # Expose port 80 EXPOSE 80 # Jalankan Apache server CMD ["apache2-foreground"]
Pastikan Anda meletakkan Dockerfile dan docker-compose.yml di direktori utama dari proyek Codeigniter Anda. Setelah Anda membuat file-file tersebut, langkah-langkah selanjutnya adalah:
- Pastikan Anda memiliki Docker dan Docker Compose terinstal di sistem Anda.
- Buka terminal atau command prompt, lalu navigasi ke direktori proyek yang berisi Dockerfile dan docker-compose.yml.
- Jalankan perintah docker-compose up -d untuk menjalankan kontainer Docker dan mengaktifkan CodeIgniter di http://localhost:80.