Rumah > Artikel > Operasi dan penyelenggaraan > Bagaimana untuk memulakan bekas di docker
Docker ialah platform kontena yang popular. Bekas ialah pakej perisian mudah alih yang ringan yang mengandungi aplikasi perisian dan semua kebergantungannya dan boleh dijalankan dalam sebarang persekitaran. Bekas Docker boleh membungkus aplikasi, perpustakaan, kebergantungan dan sistem pengendalian: ini semua dianggap "bekas" dan dijalankan pada infrastruktur bersatu.
Terdapat banyak cara untuk memulakan bekas Docker beberapa kaedah biasa akan diperkenalkan di bawah.
1. Gunakan baris arahan Docker untuk memulakan bekas
Baris arahan Docker menyediakan kaedah paling asas untuk memulakan bekas. Untuk memulakan bekas, anda perlu melakukan langkah berikut:
Inti Docker ialah bekas dan bekas ialah dicipta daripada imej Docker. Terdapat banyak imej Docker awam di Docker Hub, anda boleh mencari dan memuat turunnya mengikut keperluan. Contohnya, untuk mencari imej Docker bernama "nginx", arahannya adalah seperti berikut:
docker search nginx
Selepas anda mempunyai imej , anda perlu memuat turun dan memasangnya. Muat turun dan pasang imej Docker bernama "nginx" daripada Docker Hub menggunakan arahan berikut:
docker pull nginx
Dengan imej dan pemasangan, anda boleh mulakan bekas. Anda perlu menggunakan arahan berikut untuk memulakan bekas:
docker run -d -p 8080:80 --name web nginx
Di mana bendera "-d" bermaksud menjalankan bekas sebagai proses latar belakang dan bendera "-p" membenarkan untuk menyambungkan port kontena "80 " kepada port hos "8080 ", "--name" menentukan bahawa bekas itu dinamakan "web", dan "nginx" ialah nama imej Docker.
2. Gunakan Docker Compose untuk memulakan bekas
Docker Compose ialah salah satu alat orkestrasi kontena yang paling biasa digunakan, yang boleh digunakan untuk memulakan berbilang bekas dalam satu arahan dan menentukan hubungan antara mereka. Berikut ialah langkah-langkah untuk memulakan bekas menggunakan Docker Compose:
Pertama, anda perlu mencipta fail Docker Compose bernama "docker- compose.yml ". Dalam fail ini, anda perlu menentukan perkhidmatan, rangkaian, volum data dan parameter lain yang diperlukan oleh setiap bekas. Contohnya:
version: '3' services: web: image: nginx container_name: web ports: - "8080:80"
Selepas anda mempunyai fail Karang, anda boleh memulakan bekas itu. Dalam direktori yang sama dengan fail Karang, gunakan arahan berikut untuk memulakan bekas Karang:
docker-compose up -d
Di mana bendera "-d" bermaksud menjalankan bekas sebagai proses latar belakang.
3. Gunakan Docker Swarm untuk memulakan bekas
Docker Swarm ialah alat kluster asli Docker dan boleh digunakan untuk memulakan dan mengurus bekas pada berbilang hos. Berikut ialah langkah-langkah untuk memulakan bekas menggunakan Docker Swarm:
Pertama, anda perlu mencipta gugusan Swarm. Cipta Swarm menggunakan arahan berikut:
docker swarm init
Seterusnya, anda perlu menentukan perkhidmatan dan bekas. Gunakan arahan berikut untuk mentakrifkan perkhidmatan dan bekas:
docker service create --name web --replicas 3 --publish 8080:80 nginx
di mana "--name" menentukan nama perkhidmatan, "--replicas" mentakrifkan bilangan replika perkhidmatan dan "--publish" membenarkan sambungan ke port "80" bekas dan dedahkannya ke port "8080" pada mesin hos.
Dengan perkhidmatan yang ditentukan, anda boleh memulakan perkhidmatan dalam kelompok Swarm menggunakan arahan berikut:
docker service ls
Ini akan menunjukkan bahawa perkhidmatan telah Senarai perkhidmatan yang ditentukan. Mulakan perkhidmatan menggunakan arahan berikut:
docker service update --image nginx:latest web
Ini akan mengemas kini perkhidmatan yang sedang berjalan untuk menukar imejnya kepada versi terkini.
Ringkasan
Terdapat banyak cara untuk memulakan bekas Docker. Bekas boleh dimulakan menggunakan baris arahan Docker, Docker Compose dan Docker Swarm. Pilih kaedah yang paling sesuai dengan keperluan anda dan ikuti langkah di atas untuk memulakan bekas Docker.
Atas ialah kandungan terperinci Bagaimana untuk memulakan bekas di docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!