Cara mengatur Oracle Database Docker 12c untuk Lingkungan Pengembangan Liferay
Ketika kami memulai proyek baru menggunakan Liferay dan proyek tersebut melibatkan pengembangan entitas baru,
Pada artikel ini saya akan menjelaskan cara menggunakan Docker untuk mengatur wadah Oracle 12c untuk digunakan dengan Liferay. Saya juga merekomendasikan membaca artikel Cara membangun gambar Docker Liferay 7.2 dengan dukungan Oracle Database .
1. Apa saja persyaratannya
Sebelum melanjutkan dengan pengaturan wadah Docker, mari kita lihat apa persyaratannya.
- Anda memerlukan akun di Docker, yang dapat Anda buat dari Docker - Daftar ;
- Anda perlu menginstal atau memperbarui Docker di PC Anda. Lihat artikel ini untuk cara menginstal Docker di Windows.
Versi buruh pelabuhan yang saya berhasil menjalankan wadah Oracle Docker adalah: 17.x, 18.x dan 19.x. Versi Docker Engine (Edisi Komunitas) yang akan saya rujuk dalam artikel ini adalah 19.03.1 (Anda dapat memeriksa versi dengan
docker version
perintah).
Sistem operasi mirip Unix diperlihatkan dalam artikel ini. Dalam kasus saya, saya menggunakan macOS. Namun, sistem target harus memiliki.
2. Oracle Database 12c Docker Image
Selama beberapa tahun sekarang, Oracle Database Enterprise Edition 12 tersedia sebagai gambar di Docker Store . Dari Docker Store Anda harus checkout dan menerima persyaratan. Setelah menerima persyaratan Anda harus menemukan diri Anda pada halaman yang menjelaskan instruksi untuk digunakan.
Gambar-gambar berikut menunjukkan checkout, penerimaan persyaratan dan mendapatkan Oracle Database Enterprise Edition. Versi terbaru yang tersedia adalah 12c Rilis 2 , rilis ini adalah versi yang didukung oleh Liferay (Anda dapat melihat Liferay Digital Experience Platform 7.2 Matriks Kompatibilitas ).
3. Cara memulai instance Oracle Database Server
Langkah-langkah selanjutnya untuk memulai wadah Database Oracle adalah sebagai berikut:
- Login buruh pelabuhan
kalau gagal login
36
Looks like this is because it defaults to use the
secretservice
executable which seems to have some sort of X11 dependency for some reason. If you install and configure pass
docker will use that instead which seems to solve the problem.
In a nutshell (from https://github.com/docker/compose/issues/6023)
sudo apt install gnupg2 pass
gpg2 --full-generate-key
This generates a you a gpg2 key. After that's done you can list it with
gpg2 -k
Copy the key id (from the line labelled
[uid]
) and dopass init "whatever key id you have"
- Tarik Oracle Database Enterprise Edition 12.2.0.1
- Jalankan wadah Docker dari gambar
Mengikuti urutan perintah yang diperlukan untuk memulai wadah.
Tarikan gambar Oracle mungkin membutuhkan waktu beberapa menit hingga ukuran 4GByte. Mengikuti output dari operasi tarikan.
Gambar server database Oracle ini menggunakan volume data Docker untuk menyimpan file data, mengulang log, log audit, log peringatan dan melacak file. Volume data dipasang di dalam wadah di / ORCL. Untuk menggunakan direktori pada sistem host untuk volume data, saya membuat direktori oracle-db-data .
Perintah buruh pelabuhan menjalankan database dengan fitur-fitur berikut:
- Tetapkan wadah nama oracle-db-12c
- Mengekspos TCP / IP SQL Net port 1521
- Melalui variabel lingkungan
- Setel SID ke ORALFR
- Setel PDB ke ORALFRPDB
- Atur DB Domain ke oracledb.liferay.local
- Konfigurasikan penggunaan volume
Anda dapat menyesuaikan nilai-nilai parameter awal sesuai keinginan Anda, ini adalah yang biasanya saya gunakan untuk lingkungan pengembangan saya.
Anda dapat memantau awal wadah dengan melihat log atau menggunakan perintah buruh pelabuhan di bawah ini.
Gambar di bawah ini menunjukkan output dari perintah docker ps. Anda dapat melihat status wadah yang siap ( sehat ) untuk digunakan dan port 1521 diekspor.
4. Pengaturan Database Oracle untuk Liferay
Kita hampir sampai! Sekarang wadah Oracle Database kita sudah habis, kita perlu:
- Periksa ukuran blok yang seharusnya 8KByte, seperti yang diminta oleh Liferay;
- Periksa set karakter yang harus AL32UTF8, seperti yang diminta oleh Liferay;
- Membuat tablespace untuk data Liferay;
- Pembuatan pengguna dan pemberian hibah
Semua operasi basis data akan dilakukan melalui SQLPlus setelah tersambung ke wadah. Kata sandi default untuk terhubung ke database dengan pengguna sys adalah Oradoc_db1 .
Perintah berikut mengeksekusi SQLPlus pada wadah.
Gambar di bawah ini menunjukkan ukuran ukuran blok.
Gambar di bawah ini menunjukkan set karakter yang dikonfigurasi dengan benar dengan AL32UTF8.
Pada titik ini kita melanjutkan dengan membuat tablespace, satu untuk data dan satu untuk data sementara. Biasanya untuk lingkungan pengembangan, untuk setiap proyek Liferay saya lebih memilih untuk membuat tablespace ad hoc dan menghindari menggunakan USERS dan TEMP tablespace standar
Ukuran yang disarankan tepat untuk tablespace tidak dapat diberikan karena berbeda dan dapat digunakan dalam berbagai skenario. Berikut adalah beberapa praktik terbaik:
- Jangan mulai dengan ukuran awal yang terlalu besar, karena dapat membuang-buang ruang.
- Jangan izinkan file data individual tumbuh besar (di atas 8-10Gb) - tidak praktis dari sudut pandang pemeliharaan. Alih-alih menambahkan beberapa file data (masing-masing dengan ukuran maksimal 8-10Gb).
- Gunakan ukuran blok tunggal (8K) untuk seluruh DB untuk menghindari perangkap manajemen pool penyangga untuk tablespace non-standar (yang ukuran bloknya berbeda dari DB_BLOCK_SIZE).
Sebagai langkah terakhir kita harus membuat pengguna dan memberinya hibah yang benar.
Pada titik ini kita berada dalam posisi untuk melakukan koneksi ke skema baru menggunakan alat seperti Oracle SQLDeveloper . Gambar-gambar berikut menunjukkan konfigurasi koneksi database, tampilan tabel Liferay dan status tablespace yang dibuat untuk Liferay.
Parameter untuk terhubung ke skema Liferay baru adalah:
- Nama pengguna / kata sandi: liferay_myproject / liferay_myproject
- Nama host: localhost
- Nama Layanan: ORALFRPDB.oracledb.liferay.local
Sekarang kita dapat menghubungkan instance Liferay kita ke database Oracle yang baru saja kita konfigurasi 😉
Gambar di bawah ini menunjukkan status Docker Liferay yang menggunakan instance Oracle Database yang kami konfigurasikan selama artikel ini.
kesimpulan
Pada artikel ini saya ingin menunjukkan kepada Anda bagaimana saya biasanya mengkonfigurasi lingkungan saya ketika saya perlu memiliki Oracle Database untuk nantinya terhubung ke Liferay.
Seperti yang Anda lihat, menggunakan Docker menjadikan ini semua sangat sederhana dan cepat.
Saya harap artikel ini bermanfaat
Tidak ada komentar:
Posting Komentar