Docker telah menjadi platform kontena paling popular dalam pembangunan aplikasi moden. Menggunakan Docker, anda boleh membungkus aplikasi, perkhidmatan, dan kebergantungan yang diperlukannya ke dalam persekitaran masa jalan bebas, menjadikannya lebih mudah untuk digunakan, diurus dan skala. Dalam Docker, imej yang diperlukan untuk mencipta dan menjalankan bekas ditakrifkan melalui arahan dalam fail Docker. Dari segi sejarah, apabila imej Docker dibina dan dikeluarkan, ia tidak boleh diubah suai. Tetapi dengan perkembangan teknologi yang berterusan, kini boleh mengemas kini kod dalam fail Docker melalui pelbagai kaedah. Artikel ini akan membincangkan cara mengemas kini kod dalam fail Docker.
Cara paling mudah untuk mengemas kini kod dalam fail Docker ialah menggunakan arahan Git Pull untuk mengekstrak kod terkini daripada repositori kod. Contohnya, jika kod aplikasi anda disimpan pada GitHub, anda boleh mengemas kini pangkalan kod menggunakan arahan git berikut:
$ git pull origin master
Ini akan mengemas kini pangkalan kod setempat dan menggunakan sebarang perubahan pada fail Docker anda. Jika kod anda tidak mempunyai sebarang kebergantungan atau keperluan lain, anda boleh membina semula imej Docker selepas mengemas kini kod.
Jika aplikasi anda mempunyai berbilang kebergantungan atau memuat turun sejumlah besar fail, maka perlu memuat turun semula dan membina kebergantungan ini setiap kali anda mengemas kini mungkin memakan banyak masa dan sumber. Untuk menyelesaikan masalah ini, anda boleh menggunakan cache binaan Docker. Cache cache membolehkan anda membina imej Docker dengan lebih pantas dan hanya bahagian yang telah ditukar perlu dibina semula.
Sebagai contoh, anggap baris pertama Dockerfile anda menentukan imej asas dan menggunakan apt-get untuk memasang beberapa pakej dan kebergantungan. Ini akan menjadikan Docker memuat turun semula semua pakej dan kebergantungan ini apabila membina beberapa kali. Walau bagaimanapun, jika anda menggunakan Cache, Docker akan mempercepatkan binaan dengan ketara dengan membandingkan cincangan pakej dan kebergantungan yang digunakan dalam binaan untuk menentukan yang mana mesti dimuat turun semula dan yang mana boleh digunakan semula daripada cache.
Anda boleh mengawal penggunaan cache Cache dengan menggunakan tag yang diformat khas dalam arahan Fail Docker. Sebagai contoh, arahan berikut akan menggunakan keadaan imej binaan sebelumnya sebagai cache:
FROM myimage:1.0
Ini akan menyebabkan Docker menyemak keadaan binaan terakhir semasa membina semula bekas. Jika kandungan dan arahan Fail Docker tidak berubah dalam binaan sebelumnya, Docker akan menggunakan semula hasil binaan sebelumnya daripada cache Cache.
Docker Compose ialah alat yang boleh digunakan untuk mentakrif dan menjalankan aplikasi Docker berbilang bekas. Menggunakan Docker Compose, anda boleh mengemas kini kod dalam fail Docker dengan mudah. Contohnya, jika Dockerfile anda merujuk satu atau lebih direktori kod sumber dalam arahan CMD atau ENTRYPOINT, anda boleh menggunakan Docker Compose dan Volume untuk mengemas kini direktori kod sumber tersebut. Dengan mentakrifkan volum, Docker Compose akan memasang direktori ini dan mengemas kininya dengan kod terkini apabila bekas dimulakan semula.
Berikut ialah contoh fail konfigurasi Docker Compose:
version: "3" services: web: image: myimage:1.0 volumes: - .:/usr/src/app ports: - "5000:5000"
Ini akan mencipta bekas bernama "web" dan memetakan direktori semasa ke /usr/src/ dalam laluan aplikasi kontena . Oleh itu, setiap kali Docker Compose memulakan bekas, direktori kod sumber dikemas kini secara automatik dengan kod terkini.
Banyak alat binaan dan penggunaan automatik berasaskan Git (seperti Jenkins, Travis CI, Circle CI, dll.) boleh mengemas kini Docker secara automatik kod fail. Alat ini memantau repositori kod anda dan secara automatik mencetuskan binaan imej Docker apabila kod baharu komit atau tolakan dikesan.
Sebagai contoh, dalam Jenkins, anda boleh membuat Kerja yang dipanggil "Bina Automatik" yang mencetuskan operasi binaan pada setiap komitmen baharu. Operasi binaan akan melakukan langkah berikut:
Dengan menggunakan alat seperti ini, anda boleh mengemas kini kod secara automatik dalam fail Docker tanpa perlu melakukan apa-apa secara manual.
Docker telah menjadi alat yang sangat diperlukan apabila membangunkan dan menggunakan aplikasi. Docker menyediakan cara yang mudah dan standard untuk membungkus dan mengedarkan aplikasi. Dalam Docker, kod dalam fail Docker boleh dikemas kini melalui pelbagai cara. Artikel ini memperkenalkan beberapa kaedah biasa, seperti Menarik kod terkini, menggunakan cache Cache, menggunakan Docker Compose dan Volume, dan menggunakan alat binaan dan penggunaan automatik berasaskan Git. Mana-mana kaedah yang anda pilih, pastikan kod anda sentiasa terkini untuk memastikan aplikasi anda sentiasa kelihatan terbaik.
Atas ialah kandungan terperinci Bagaimana untuk mengemas kini kod dalam fail docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!