Membuat Docker Compose untuk CodeIgniter 4 dengan Apache, PostgreSQL, dan pgAdmin

Docker telah menjadi solusi populer dalam pengembangan aplikasi karena kemampuannya dalam mengelola lingkungan secara konsisten. Dalam artikel ini, kita akan membahas cara membuat Docker Compose untuk menjalankan CodeIgniter 4 dengan Apache, PostgreSQL, dan pgAdmin. Konfigurasi ini juga akan mengaktifkan ekstensi PHP intl, pgsql, dan mod_rewrite menggunakan Dockerfile untuk pengaturan yang lebih fleksibel

Struktur Folder

pastikan struktur proye seperti berikut

/project-root
├── docker-compose.yml
├── Dockerfile

Setiap layanan memiliki folder dan Dockerfile sendiri agar dapat dikustomisasi secara modular.

Konfigurasi Dockerfile untuk Codeigniter 4

Buat file app/Dockerfile untuk PHP dengan Apache, mengaktifkan ekstensi yang dibutuhkan seperti pgsql, intl, dan mengaktifkan mod_rewrite:

# Menggunakan image dasar PHP dengan Apache
FROM php:8.2-apache

# Perbarui package manager dan install ekstensi yang diperlukan
RUN apt-get update && apt-get install -y \
    libicu-dev \
    libpq-dev \
    unzip

# Aktifkan ekstensi PHP Intl dan PostgreSQL
RUN docker-php-ext-install intl pgsql

# Aktifkan mod_rewrite Apache
RUN a2enmod rewrite

# Restart Apache agar perubahan berlaku
RUN service apache2 restart

EXPOSE 80
CMD ["apache2-foreground"]

Konfigurasi Docker Compose

Buat file docker-compose.yml untuk menghubungkan semua layanan:

version: '3.8'

services:
  app:
    build: .
    container_name: codeigniter4_app
    restart: always
    volumes:
      - ./html:/var/www/html
    ports:
      - "8080:80"
    depends_on:
      - db
    environment:
      - CI_ENV=development
    networks:
      - ci_network

  db:
    image: postgres:15
    container_name: ci4_postgres
    restart: always
    environment:
      POSTGRES_USER: ci4_user
      POSTGRES_PASSWORD: ci4_password
      POSTGRES_DB: ci4_database
    volumes:
      - ./postgresql/data:/var/lib/postgresql/data
    ports:
      - "5432:5432"
    networks:
      - ci_network

  pgadmin:
    image: dpage/pgadmin4
    container_name: pgadmin_ci4
    restart: always
    environment:
      PGADMIN_DEFAULT_EMAIL: [email protected]
      PGADMIN_DEFAULT_PASSWORD: adminpassword
    ports:
      - "5050:80"
    depends_on:
      - db
    networks:
      - ci_network

networks:
  ci_network:
    driver: bridge

Menjalankan Docker Compose

Setelah semua konfigurasi selesai, jalankan perintah berikut untuk membangun semua layanan:

docker-compose up --build -d

Menambah Custom Field Pada WordPress

Custom Field adalah tempat untuk kita menuliskan atau memasukkan informasi pada sebuah post diluar tempat yang sudah disediakan. Tempat yang sudah disediakan itu adalah Title atau judul postingan. Kemudian ada juga body post atau tempat kita nulis artikel atau postingan. Nah, diluar itu, kita bisa menambahkan jenis lainnya yang disebut dengan custom field.

Secara bawaan ternyata WordPress sudah menyediakan fitur untuk menambah field secara custom. Secara default fitur itu tidak aktif dan kita perlu meng-aktifkannya jika ingin menggunakan fitur tersebut.

Cara aktifkannya yaitu melalui setting yang ada di halaman add new post. Pada bagian button “titik tiga” di pojok kanan atas jika di-klik akan muncul dropdown. Selanjutnya scroll ke bagian bawah dan klik menu Preference. Setelah itu akan muncul pop-up dan disitu ada toggle untuk mengaktifkan custom field di bagian paling bawah.

Untuk wordpress versi lama, settingan ada di menu screen options.

Tetapi, untuk custom field ini, tidak langsung muncul di halawan live view. Jadi kita harus menyiapkan template nya dan di-custom untuk menampilkan field yang sudah kita buat.

Upgrade SSD Tanpa Install Ulang

Kyeword pada judul diatas yang saya pakai buat nyari software buat mindahin semua data termasuk os dari drive C ke SSD yang baru dan lebih besar kapasistasnya.

Dulu pernah melakukannya sekitar 6 tahun lalu atau tahun 2018-an ketika dapet leptop baru dan space HDD tidak mencukupi. Waktu itu bisa pakai macrium reflect, tapi sekarang untuk kloning os sudah harus berbayar. Ada yang nyaranin pakai EaseUs partition ternyata bayar juga.

Menemukan solusi software yang bisa buat cloning windows 11 ke ssd yang baru dan gratis, yaitu pakai DiskGenius. Sudah cukup untuk keperluan upgrade ssd ke kapasitas yang lebih besar.

Mengeluarkan uang untuk software cloning ssd kok sayang karena kebutuhan itu hanya sesekali dan mungkin dalam 5 tahun tidak dipakai, kecuali memang dibutuhkan untuk kebutuhan sehari-hari, mungkin cukup worth-it untuk pilih versi berbayar.

Android Studio : Membuka intent activity melalui menu preferences

Langsung singkat saja, berikut adalah syntax untuk memanggil activity melalui preference:

<PreferenceCategory 
    android:title="text title">
    <Preference
        android:key="keySomething"
        android:title="text title"
        android:summary="text summary">
        <intent
             android:action="android.intent.action.VIEW"
             android:targetPackage="com.example.app"
             android:targetClass="com.example.app.NamesActivity" />         
    </Preference>
.....
</PreferenceCategory>

kuncinya ada di targetPackage dan targetClass

Untuk membuka activity baru dari click pada navigation menu dan atau navigation drawer, caranya berbeda lagi.

Cara mengganti warna (replace color) pada gambar di Gimp

Ganti warna gambar pada Gimp ternyata tidak sulit. Tinggal berapa click saja sudah berubah.

Gimp adalah aplikasi pengolah gambar digital sama seperti Photoshop. Bedanya, Gimp berlisensi open source sehingga aplikasi ini gratis digunakan tanpa perlu membayar lisensi.

Berikut langkahnya:

  1. Buka gambar yang akan diganti warnanya dengan Gimp.
  2. Click Color > Map > Color Exchange
  3. Ubah from color dan to color untuk mengubah warna dari warna lama ke warna baru.

Tool ini bisa sangat membantu untuk mengganti warna pada gambar yang tidak terlalu banyak memiliki komponen warna. Misalnya dalam gambar atau icon yang memiliki dua warna. Kita ingin mengganti salah satu warnanya saja misalnya.

Untuk gambar yang memiliki susunan warna yang komplek, seperti untuk gambar yang meimiliki gradient, atau foto dari kamera. Gambar kompleks seperti ini memerlukan teknik editing foto yang lebih kompleks.