Pekerjaan penerapan tingkat perusahaan terkenal kaku dan lambat bereaksi terhadap perubahan. Dengan banyaknya organisasi yang mengadopsi Docker dan layanan container, menjadi lebih mudah untuk memasukkan siklus hidup penerapan Talend ke dalam layanan Docker dan container mereka yang sudah ada, menciptakan platform penerapan yang lebih bersatu untuk dibagikan di berbagai aplikasi dalam suatu organisasi.
Artikel ini dimaksudkan sebagai panduan mulai cepat tentang cara menghasilkan Talend Jobs sebagai image Docker menggunakan layanan Docker yang berada di host jarak jauh.
Selain itu, untuk memberikan pemahaman yang lebih baik tentang penanganan image Docker, beberapa topik di bawah ini dibahas dengan membuat perbandingan antara skrip sh/bat dan image Docker.
Menyiapkan Docker Anda untuk build jarak jauh
Talend Studio perlu terhubung ke layanan Docker agar dapat menghasilkan citra (image) Docker.
Layanan Docker dapat berjalan pada mesin tempat Talend Studio terinstal, atau dapat berjalan di suatu tempat pada host jarak jauh. Langkah ini tidak diperlukan jika Docker berjalan di mesin yang sama tempat Talend Studio terinstal; langkah ini hanya diperlukan jika Talend Studio dan Docker berjalan pada host yang berbeda.
Membangun Citra Docker dari Talend Studio v7.1 atau Lebih Baru
Dalam v7.1, Talend memperkenalkan plugin Fabric 8 Maven untuk menghasilkan citra (image) Docker secara langsung dari Talend Studio.
Menggunakan Talend Studio, kita dapat membangun image Docker yang disimpan di repositori Docker lokal. Atau, kita dapat membangun dan mempublikasikan image Docker ke registri pilihan kita.
Mari kita lihat kedua opsi berikut:
Bangun Citra Docker dari Talend Studio
- Klik kanan pada Job dan navigasikan ke Bangun Pekerjaan opsi:
- Di bawah jenis build, pilih Citra Docker:
- Pilih konteks yang sesuai dan level log4j.
4. Di bawah Opsi Docker, pilih lokal jika Docker dan Studio diinstal pada host yang sama, atau pilih Jarak Jauh jika layanan Docker Anda berjalan pada host yang berbeda dari tempat Talend Studio dipasang. Dalam contoh kami, kami mengaktifkan Docker untuk build jarak jauh melalui TCP pada port 2375
tcp://dockerhostIP:23755. Setelah ini selesai, citra (image) Docker Anda dibangun dan disimpan di repositori Docker, dalam contoh kita pada host 2.
6. Masuk ke host Docker, dalam contoh kami host 2, dan jalankan perintah citra docker. Anda seharusnya dapat melihat gambar yang baru saja kami buat:
Bangun dan Publikasikan Docker Image ke Registry dari Talend Studio
Talend Studio dapat digunakan untuk membangun image Docker, dan image tersebut dapat dipublikasikan ke registri mana pun tempat image tersebut dapat diambil oleh Kubernetes atau layanan kontainer apa pun. Dalam contoh kami, saya telah menyiapkan registri AWS ECR.
- Klik kanan pada nama Job dan navigasikan ke Publikasikan opsi.
2. Pilih Jenis Ekspor Citra Docker
3. Di bawah Docker Options, berikan detail host dan port Docker seperti yang dibahas pada topik sebelumnya. Masukkan detail yang diperlukan dari registry dan nama image Docker:
Nama Citra = Nama Repositori Image Tag=Nama Pekerjaan_Versi Username = AccessKeyId (AWS) Password=Rahasia (AWS)4. Setelah selesai, navigasikan ke AWS ECR dan Anda seharusnya dapat mencari dan menemukan citra tersebut
Menjalankan Docker Images vs Skrip Shell atau Bat
Dengan Talend, kita semua terbiasa dengan salah satu .SH atau .Bat skrip, jadi untuk pemahaman yang lebih baik tentang cara menjalankan image Docker, mari kita bahas berbagai aspek secara mendetail, seperti cara meneruskan parameter runtime dan volume mounting di bawah ini.
Meneruskan Parameter Waktu Proses (Run Time) ke Docker Image
Untuk menjalankan citra (image) Docker yang ada di repositori Docker Anda (Talend Build Job sebagai Docker)
-
- Cantumkan semua Docker Image dengan menjalankan perintah citra docker:
- Sekarang saya ingin menjalankan citra tersebut madhav_tmc/tlogrow, Tag terbaru, yang menggunakan tWarn komponen untuk mencetak pesan. Sebagian pesan akan berasal dari variabel konteks param.
- Jalankan image Docker dengan meneruskan nilai ke variabel konteks param pada saat runtime:
Di dalam log di bawah ini, kita dapat melihat nilai yang diteruskan ke image Docker saat runtime