Bagaimana untuk menyelesaikan masalah apabila docker gagal menjalankan fail konfigurasi mengikat nginx

WBOY
Lepaskan: 2023-05-17 09:34:05
ke hadapan
942 orang telah melayarinya

Pelaksanaan langsung arahan permulaan akan gagal

tarik imej:

docker pull nginx
Salin selepas log masuk

Kemudian laksanakan arahan permulaan:

docker run -d -p 80:80 -p 443:443 --name nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /mydata/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/cache:/var/cache/nginx \
--restart=always nginx
Salin selepas log masuk
Salin selepas log masuk

Jika fail /mydata/nginx/conf/nginx.conf tidak wujud, ralat docker akan muncul di sini , kerana docker tidak membenarkan mengikat fail yang tidak wujud.

dan terus mencipta kosong /mydata/nginx/conf/nginx.confWalaupun docker tidak akan melaporkan ralat, nginx tidak boleh bermula seperti biasa dalam bekas Dilihat melalui perintah docker ps -a, nginx akan berada dalam exit atau sentiasa <🎜. > state , kerana operasi nginx bergantung pada konfigurasi yang berkaitan dalam fail konfigurasi ini. restartnginx.confIdea dan kaedah penyelesaian

Mula-mula jalankan bekas tanpa menggunakan pengikatan -v, dan kemudian salin terus fail yang berkaitan dalam bekas ke lokasi yang ditentukan. Selepas itu, anda boleh memadamkan bekas dan jalankan secara langsung arahan permulaan.

Operasi khusus adalah seperti berikut:

Mula-mula buat folder yang berkaitan:

mkdir -p \
/mydata/nginx/html \
/mydata/nginx/conf \
/mydata/nginx/logs \
/mydata/nginx/cache
Salin selepas log masuk

Jalankan bekas nginx:

docker run -d --name nginx nginx
Salin selepas log masuk

Salin fail konfigurasi dan folder ke Hos direktori yang ditentukan:

docker cp nginx:/etc/nginx/nginx.conf /mydata/nginx/conf/
docker cp nginx:/etc/nginx/conf.d /mydata/nginx/conf.d
Salin selepas log masuk

Padamkan bekas asal:

docker rm -f nginx
Salin selepas log masuk

Jalankan arahan permulaan, -v mengikat volum yang berkaitan:

docker run -d -p 80:80 -p 443:443 --name nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /mydata/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/cache:/var/cache/nginx \
--restart=always nginx
Salin selepas log masuk
Salin selepas log masuk

Alihkan salinan dalam

direktori Fail ke lokasi yang betul:

 mv /mydata/nginx/conf.d/* /mydata/nginx/conf/conf.d/
 rm -rf /mydata/nginx/conf.d
Salin selepas log masuk
conf.d Dengan cara ini bekas nginx boleh berjalan seperti biasa, dan kami telah memetakan kedua-dua fail dan direktori

kepada hos melalui operasi di atas untuk mengubah suai nginx.conf pada masa hadapan atau menambah conf.d fail ke nginx.conf hanya perlu dilakukan di lokasi yang sepadan pada mesin hos. conf.d

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah apabila docker gagal menjalankan fail konfigurasi mengikat nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan