Apakah pintu masuk shell yang betul untuk bekas Docker Alpine Golang? Ini adalah masalah yang sering dihadapi oleh ramai pembangun apabila membina bekas Docker menggunakan imej Golang dan Alpine. Sebelum menyelesaikan masalah ini, kita perlu memahami terlebih dahulu pengetahuan berkaitan Golang dan Alpine. Golang ialah bahasa pengaturcaraan yang cekap dan ringkas, manakala Alpine ialah pengedaran Linux yang ringan. Apabila menggunakan Alpine sebagai imej asas, beberapa arahan Shell biasa mungkin hilang kerana sifatnya yang diperkemas. Jadi, bagaimana untuk menetapkan titik masuk bekas Docker Alpine Golang dengan betul supaya ia boleh menjalankan program shell? Mari kita lihat jawapan yang diberikan oleh editor php Apple.
Saya cuba memulakan bekas docker alpine golang (hanya imej asas) dan segera menyambung kepadanya untuk menjalankan arahan, tetapi saya tidak dapat menentukan shell yang betul.
docker run -d golang:1.20-alpine --entrypoint=bin/sh ec90a5d5eeba63e509acc09e234054d883aa122cd7617f89b61e7d71220847cd docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "--entrypoint=bin/sh": stat --entrypoint=bin/sh: no such file or directory: unknown.
Saya juga mencuba: /bin/sh
. Apa yang saya hilang di sini?
Saya hanya akan menulis jawapan dalam komen dan bukannya arahan.
Untuk memulakan bekas docker alpine golang (hanya imej asas) dan segera menyambung kepadanya untuk menjalankan arahan, anda boleh melakukan perkara berikut:
docker run -it golang:1.20-alpine /bin/sh
Jika anda ingin menamakan bekas anda, anda boleh melakukan ini:
docker pull golang:1.20-alpine docker run -id --name=test5 golang:1.20-alpine docker exec -it test5 /bin/sh
Anda boleh menggunakan docker stop test5 -t 2
停止容器,然后使用 docker start test5
untuk memulakan bekas semula.
Anda boleh memadamkannya dengan melaksanakan docker rm test5
.
Anda boleh menukar sedikit arahan untuk mengelakkan ralat:
docker run -d --entrypoint=/bin/sh golang:1.20-alpine
Sila ambil perhatian bahawa suis baris arahan --entrypoint
mendahului golang:1.20-alpine.
Atas ialah kandungan terperinci Program shell yang betul untuk titik masuk kontena docker alpine golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!