GNU/Linux >> Belajar Linux >  >> Panels >> Docker

Docker Bagian 4:membangun dan memublikasikan gambar buruh pelabuhan khusus

Di bagian pertama dan kedua, kami membahas dasar-dasar menjalankan container dengan menyiapkan sistem kami untuk mengelola container docker dan apa sebenarnya artinya menggunakan container docker terhadap teknologi virtualisasi lain dari perspektif teknis. Kemudian, pada bagian ketiga, kami melanjutkan dengan gambar buruh pelabuhan, mempelajari dasar-dasarnya, dan membuat wadah Notepad pertama kami menggunakan WordPress atau DokuWiki.

Di bagian keempat ini, kita akan melihat bagaimana gambar buruh pelabuhan dibuat dan kita akan membuat gambar kustom kita sendiri yang siap diunduh dan dibagikan dengan teman, kolega, dan komunitas kita.

Untuk tutorial ini, kita akan menggunakan gambar Whale Docker. Whale adalah maskot resmi Docker dan gambar Whale docker menyerupai program cowsay yang menghasilkan gambar ASCII seekor sapi di terminal dengan sebuah pesan. Itu juga dapat menghasilkan gambar menggunakan gambar hewan lain yang telah dibuat sebelumnya, seperti Tux the Penguin, maskot Linux.

Pengantar File Docker

Di bagian sebelumnya, kami memperkenalkan diri ke Docker Hub dan mengetahui bahwa itu adalah sumber daya terpusat berbasis cloud untuk penemuan gambar kontainer, pembuatan gambar, dan distribusi gambar tersebut. Kami juga mempelajari bahwa gambar buruh pelabuhan adalah gambar multi-lapisan di atas gambar dasar. Karena itu, menggunakan gambar dasar menghilangkan kerumitan membuat dari awal OS yang cocok untuk gambar buruh pelabuhan dan memberi kami opsi untuk menyesuaikan lapisan atas tempat perangkat lunak kami akan berada.

Untuk membuat gambar kustom dengan menggunakan gambar dasar, kita perlu menyediakan mesin buruh pelabuhan dengan instruksi tentang cara menginstal dan mengkonfigurasi paket dan file dan juga beberapa pengaturan yang menyertainya. Instruksi ini ditulis dalam file teks biasa yang disebut "dockerfile". Dockerfiles seperti resep yang Anda serahkan ke koki dan dia memasakkan Anda makanan yang enak. File buruh pelabuhan ini ditulis menggunakan serangkaian langkah deskriptif sederhana yang disebut "instruksi". Setiap instruksi membuat layer baru di gambar kita. Instruksi mencakup tindakan seperti menjalankan perintah, menambahkan file atau direktori, proses apa yang harus dijalankan saat meluncurkan wadah dari gambar, dll. Proses ini sama seperti Anda akan mengatur serangkaian perintah dalam skrip shell. Setelah Anda meminta pembuatan gambar, Docker membaca file docker, menjalankan instruksi, dan mengembalikan gambar akhir.

Membuat Gambar Docker

Ada dua cara untuk membangun image Docker kustom Anda. Anda dapat membangunnya di komputer Anda atau Anda dapat menggunakan Docker Hub yang telah kita bicarakan sebelumnya. Di bagian ini, kita akan mempelajari cara membuat image Docker secara lokal dan kemudian memublikasikannya di Docker Hub Registry.

Membangun Secara Lokal menggunakan Dockerfile

Kami akan membuat Gambar Docker kustom menggunakan gambar "Whale say " yang merupakan Gambar Docker kecil (berdasarkan Gambar Ubuntu) yang ketika Anda menjalankannya, ia mengatakan sesuatu yang Anda program untuk mengatakan kembali kepada Anda.

Pertama, jalankan terminal dan buat folder baru dengan mengetik:

mkdir mywhale

Direktori ini berfungsi sebagai "konteks" untuk build. Konteksnya hanya berarti berisi semua hal yang Anda perlukan agar berhasil membangun citra Anda.

Masuk ke dalam folder baru Anda dengan:

cd mywhale

dan buat Dockerfile di folder dengan mengetik:

touch Dockerfile

Sekarang Anda akan melihat Dockerfile kosong yang kami buat jika Anda memberikan perintah 'll':

ll
$ ll
total 8.0K
-rw-rw-r-- 1 user user 0 23:26 Dockerfile

Buka dengan editor teks favorit Anda dan tambahkan:

FROM docker/whalesay:latest

Baris instruksi pertama ini, dengan kata kunci FROM, memberi tahu Docker gambar mana yang menjadi dasar gambar Anda. Anda mendasarkan pekerjaan baru Anda pada gambar whalesay yang ada.

Instruksi selanjutnya yang akan kita tambahkan akan memberikan kemampuan kepada paus kita untuk meramal. Untuk menyelesaikan tugas ini, kami akan menggunakan paket keberuntungan yang tersedia di repositori Ubuntu (ingat bahwa gambar paus didasarkan pada gambar Ubuntu). Program peruntungan memiliki perintah yang mencetak ucapan bijak untuk diucapkan paus kita.

Jadi, langkah pertama adalah menginstalnya. Untuk melakukan ini, kami menambahkan instruksi instalasi apt yang biasa:

RUN apt -y update && apt -y install fortunes

Setelah gambar memiliki perangkat lunak yang dibutuhkan, Anda menginstruksikan perangkat lunak untuk berjalan saat gambar dimuat. Untuk melakukan ini, kami menambahkan instruksi berikut:

CMD /usr/games/fortune -a | cowsay

Baris di atas memberitahu program keberuntungan untuk mengirim kutipan yang dipilih secara acak ke program cowsay

Dan kita selesai! Sekarang simpan file dan keluar.
Anda dapat memverifikasi apa yang Anda lakukan dengan menjalankan "cat Dockerfile" sehingga Dockerfile Anda terlihat seperti ini:

cat Dockerfile
FROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsay

Sekarang semuanya (semoga) terlihat bagus, saatnya untuk membangun Gambar Docker kami (jangan lupa titik . di dan dari perintah).:

docker build -t my-docker-whale .

Perintah di atas mengambil Dockerfile di folder saat ini dan membuat gambar yang disebut "my-docker-whale" di mesin lokal Anda.

Anda dapat memverifikasi bahwa gambar Docker Anda memang disimpan di komputer Anda dengan:

docker images

Kemudian Anda dapat menjalankan image Docker Anda dengan mengetikkan yang berikut:

docker run my-docker-whale

Setelah dijalankan, Anda akan mendapatkan sesuatu seperti gambar berikut

Memublikasikan Gambar Docker Kustom Anda di Docker Hub

Opsi Anda selanjutnya adalah mempublikasikan gambar Docker yang dibuat di Repositori Docker Hub. Untuk melakukannya, Anda perlu membuat akun di halaman web pendaftaran Docker Hub di mana Anda akan memberikan nama, kata sandi, dan alamat email untuk akun Anda. Saya juga harus menunjukkan bahwa layanan Docker Hub gratis untuk gambar buruh pelabuhan publik. Setelah Anda membuat akun, Anda dapat mendorong gambar yang telah Anda buat sebelumnya, agar tersedia untuk digunakan orang lain.

Untuk melakukannya, Anda memerlukan ID dan TAG dari gambar “my-docker-whale” Anda.

Jalankan lagi perintah "gambar buruh pelabuhan" dan catat ID dan TAG gambar buruh pelabuhan Anda mis. a69f3f5e1a31.

Sekarang, dengan perintah berikut, kita akan menyiapkan Gambar Docker kita untuk perjalanannya ke dunia luar (bagian nama akun dari perintah tersebut adalah nama akun Anda di halaman profil Docker Hube):

docker tag a69f3f5e1a31 accountname/my-docker-whale:latest

Jalankan perintah "gambar buruh pelabuhan" dan verifikasi gambar Anda yang baru diberi tag.

Selanjutnya, gunakan perintah "docker login" untuk masuk ke Docker Hub dari baris perintah.

Format untuk perintah login adalah:

docker login --username=yourhubusername [email protected]

Saat diminta, masukkan kata sandi Anda dan tekan enter.

Sekarang Anda dapat mendorong gambar Anda ke repositori yang baru dibuat:

docker push accountname/my-docker-whale

Perintah di atas dapat memakan waktu cukup lama untuk diselesaikan tergantung pada bandwidth unggahan koneksi Anda karena ia mengunggah sesuatu seperti 180ΜΒ data (dalam contoh kami). Setelah selesai, Anda dapat membuka profil Anda di Docker Hub dan melihat gambar baru Anda.

Mengunduh Gambar Kustom Anda

Jika Anda ingin menarik gambar Anda dari repositori Docker Hub, Anda harus terlebih dahulu menghapus gambar asli dari mesin lokal Anda karena Docker akan menolak untuk menarik dari hub karena gambar lokal dan jarak jauh identik.

Seperti yang Anda ingat dari bagian sebelumnya, untuk menghapus gambar buruh pelabuhan, Anda harus menjalankan perintah "docker rmi". Anda dapat menggunakan ID atau nama untuk menghapus gambar:

docker rmi -f a69f3f5e1a31

Sekarang setelah gambar dihapus, Anda dapat menarik dan memuat gambar dari repositori menggunakan perintah "docker run" dengan memasukkan nama akun Anda dari Docker Hub.

docker run accountname/my-docker-whale

Karena kami sebelumnya menghapus gambar dan tidak lagi tersedia di sistem lokal kami, Docker akan mengunduhnya dan menyimpannya di lokasi yang ditentukan.

Ringkasan

Di bagian ini, kita belajar cara membuat file Docker, menulis beberapa instruksi dasar dan build serta image yang menggunakannya sebagai resep. Kami juga membahas dasar-dasar mendorong gambar kustom baru kami ke registri Docker Hub dan menariknya ke mesin lokal kami. Di bagian selanjutnya dari seri tutorial Docker ini, saya akan menunjukkan bagaimana kita dapat mengotomatiskan prosedur pembuatan gambar sehingga kita dapat langsung membuat gambar kustom kapan pun kita membutuhkannya! Pantau terus.


Docker
  1. Cara Memindahkan Gambar Docker antar Host

  2. Buat, Beri Tag, dan Unggah Gambar Docker Anda Sendiri

  3. Cara Berbagi Gambar Docker Dengan Orang Lain

  1. Cara Mengemas dan Mentransfer Gambar Docker Dari Satu Server ke Server Lainnya

  2. Cara Memodifikasi Gambar Docker

  3. Cara Membuat dan Mengonfigurasi Gambar Docker Kustom secara Otomatis dengan Dockerfile – Bagian 3

  1. Docker:Cara menggunakannya secara praktis - Bagian 3

  2. Memulai dengan Gambar Docker yang Dibuat Sebelumnya

  3. Cara membuat Gambar Docker dari Wadah dan File Docker