Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apakah yang perlu saya lakukan jika docker tidak keluar apabila ia bermula?

Apakah yang perlu saya lakukan jika docker tidak keluar apabila ia bermula?

PHPz
PHPzasal
2023-04-19 14:12:191244semak imbas

Docker ialah platform sumber terbuka berdasarkan teknologi kontena, yang boleh membungkus aplikasi dengan mudah ke dalam bekas bebas dan mudah alih untuk digunakan. Walau bagaimanapun, apabila menggunakan Docker, kadangkala bekas boleh keluar serta-merta selepas memulakannya. Pada masa ini, kita perlu mencari punca dan menyelesaikan masalah.

1. Semak status permulaan bekas Docker

Anda boleh menyemak status permulaan bekas Docker dengan melaksanakan arahan berikut:

kontena docker ls -a

Ini Perintah akan memaparkan maklumat asas semua bekas, termasuk ID kontena, nama, status, port, dll. Kita boleh menentukan sama ada bekas itu berjalan dengan menyemak status bekas itu.

Jika status kontena Keluar, bermakna kontena telah keluar Kita perlu mengetahui masalah yang menyebabkan bekas itu keluar.

2. Semak maklumat log kontena

Terdapat banyak sebab mengapa kontena keluar selepas bermula, termasuk ralat konfigurasi, perkhidmatan tidak dimulakan, konflik port, dll. Kita boleh mengetahui sebab khusus mengapa kontena gagal dimulakan dengan melihat maklumat log kontena.

Laksanakan arahan berikut untuk melihat maklumat log bekas:

log buruh pelabuhan [nama bekas]

Anda boleh menggunakan arahan ini untuk melihat output standard (stdout ) dan ralat standard bekas Output (stderr) untuk mencari masalah dengan cepat.

3. Mulakan bekas Docker dan pastikan ia berjalan

Apabila menggunakan Docker, kita boleh menggunakan parameter untuk menghalang bekas daripada keluar selepas memulakan parameter yang biasa digunakan adalah seperti berikut:

docker run -d [image-name] [command]

Parameter -d menunjukkan memulakan bekas di latar belakang Tanpa parameter ini, bekas akan berjalan di latar depan. Parameter arahan menunjukkan arahan yang perlu dilaksanakan selepas bekas dimulakan.

Sebagai contoh, apabila memulakan bekas Nginx, anda boleh menggunakan arahan berikut:

docker run -d -p 80:80 nginx

Arahan ini memulakan bekas Nginx , Dan petakan port 80 hos ke port 80 bekas supaya kami boleh mengakses perkhidmatan Nginx melalui penyemak imbas.

4. Gunakan Docker Compose untuk mengurus bekas

Docker Compose ialah alat yang boleh mengurus berbilang bekas dan boleh menyelesaikan tugas dengan mudah seperti mengatur, memulakan dan menghentikan aplikasi berbilang bekas.

Dengan menulis fail docker-compose.yml, anda boleh menentukan set bekas, termasuk parameter larian kontena, kebergantungan, konfigurasi rangkaian, dsb. Kemudian kita boleh menggunakan arahan docker-compose untuk memulakan, menghentikan dan mengurus bekas ini.

Sebagai contoh, apabila memulakan tapak web WordPress, anda boleh menggunakan fail docker-compose.yml berikut:

versi: '3.3'

perkhidmatan:
db :

image: mysql:5.7
volumes:
  - db_data:/var/lib/mysql
restart: always
environment:
  MYSQL_ROOT_PASSWORD: somewordpress
  MYSQL_DATABASE: wordpress
  MYSQL_USER: wordpress
  MYSQL_PASSWORD: wordpress

wordpress:

depends_on:
  - db
image: wordpress:latest
ports:
  - "80:80"
restart: always
environment:
  WORDPRESS_DB_HOST: db:3306
  WORDPRESS_DB_USER: wordpress
  WORDPRESS_DB_PASSWORD: wordpress

volum:

db_data:

Fail ini mentakrifkan bekas MySQL dan bekas WordPress, di mana bekas WordPress bergantung pada bekas MySQL . Dengan menggunakan arahan docker-compose up, anda boleh memulakan kedua-dua bekas ini dan mencipta laman web WordPress.

Ringkasan

Docker boleh membantu kami menggunakan aplikasi dengan cepat dan mencapai kebebasan serta mudah alih aplikasi melalui teknologi kontena. Walau bagaimanapun, apabila menggunakan Docker, kami juga perlu memberi perhatian kepada status permulaan kontena, menyemak maklumat log kontena tepat pada masanya dan mengambil langkah yang sesuai untuk menyelesaikan masalah tersebut. Selain itu, dengan menggunakan Docker Compose, kami boleh mengurus berbilang bekas dengan mudah, meningkatkan kecekapan dan kebolehpercayaan penggunaan aplikasi.

Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika docker tidak keluar apabila ia bermula?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn