


Bagaimana buruh pelabuhan menyelesaikan masalah yang crontab tidak berkuat kuasa
Penyelesaian: 1. Semak sama ada "/etc/init.d/crond status" dalam bekas berada dalam status berjalan; 2. Ubah suai fail "/etc/pam.d/crond" dan tukar " diperlukan" "Tukar kepada "cukup"; 3. Gunakan "/etc/init.d/crond restart" untuk memulakan semula perkhidmatan crond.
Persekitaran pengendalian tutorial ini: sistem linux7.3, docker versi 19.03, komputer Dell G3.
Cara menyelesaikan masalah crontab tidak berkuat kuasa dalam docker
Imej centos digunakan secara lalai dalam docker, dan crond tidak dipasang dalam imej Selepas pemasangan yang berjaya melalui yum, crontab tidak berkuat kuasa.
1 Mula-mula semak sama ada /etc/init.d/crond status dalam bekas berada dalam keadaan berjalan.
Jika penyelesaian tidak dapat diselesaikan melalui langkah pertama, sila rujuk kaedah berikut:
2 Ubah suai fail /etc/pam.d/crond, tukar yang diperlukan kepada mencukupi, dan kemudian mulakan semula crond Perkhidmatan: /etc/init.d/crond restart
Nota: Masalah ini nampaknya tidak wujud dalam imej asas centos7.
Perluaskan pengetahuan
Penyelesaian terawal
1. Dalam mesin hos
1 3 * * * root cd /data/wwwroot/xxx && docker-compose exec app php think xxx >> /var/log/crontab_xxx.log
docker -compose exec app php think xxx telah tidak berjaya dilaksanakan
2. Kemudian pasang crontab dalam bekas, tetapi pelaksanaan masih gagal. Semak bahawa crontab juga dimulakan. /etc/init.d/cron status
3. Pasang rsyslog, apt-get install rsyslog, perkhidmatan rsyslog start
Lihat /var/log/syslog
Dec 25 09:07:07 1a8e4fd5c766 crontab[15120]: (root) BEGIN EDIT (root) Dec 25 09:07:34 1a8e4fd5c766 crontab[15120]: (root) REPLACE (root) Dec 25 09:07:34 1a8e4fd5c766 crontab[15120]: (root) END EDIT (root) Dec 25 09:08:01 1a8e4fd5c766 cron[15100]: (root) RELOAD (crontabs/root) Dec 25 09:08:01 1a8e4fd5c766 CRON[15133]: Cannot make/remove an entry for the sp
4. Ubah suai /etc/pam.d/cron
Sesi komen keluar diperlukan pam_loginuid.so
5. Mulakan semula cron dan jalankan dengan jayanya
Juga, tambah Tambah baris ini ke fail docker
RUN sed -i '/session required pam_loginuid.so/c\#session required pam_loginuid.so' /etc/pam.d/crond
Terdapat juga perangkap dalam pelaksanaan crontab Tiada masalah dalam melaksanakan skrip secara manual kerana pembolehubah persekitaran dibaca dan PHP perlu menulis laluan mutlak
/usr/local/bin/php think xxx
Pembelajaran yang disyorkan: "tutorial video buruh pelabuhan"
Atas ialah kandungan terperinci Bagaimana buruh pelabuhan menyelesaikan masalah yang crontab tidak berkuat kuasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Empat cara untuk keluar dari Docker Container: Gunakan Ctrl D di terminal kontena masukkan perintah keluar di terminal kontena Gunakan Docker Stop & lt; container_name & gt; Perintah Gunakan Docker Kill & lt; container_name & gt; Perintah di terminal tuan rumah (keluar kuasa)

Kaedah untuk menyalin fail ke tuan rumah luaran di Docker: Gunakan arahan CP Docker: Jalankan Docker CP [Options] & lt; Container Path & GT; & lt; PATH HOST & GT;. Menggunakan jumlah data: Buat direktori pada tuan rumah, dan gunakan parameter -V parameter untuk memasang direktori ke dalam bekas apabila membuat bekas untuk mencapai penyegerakan fail bidirectional.

Cara memulakan semula bekas Docker: Dapatkan ID Container (Docker PS); Hentikan bekas (Docker Stop & lt; container_id & gt;); Mulakan bekas (Docker Start & lt; container_id & gt;); Sahkan bahawa permulaan semula berjaya (Docker PS). Kaedah lain: Docker mengarang (Docker-Compose Restart) atau Docker API (lihat Dokumentasi Docker).

Proses memulakan MySQL di Docker terdiri daripada langkah -langkah berikut: Tarik imej MySQL untuk membuat dan memulakan bekas, tetapkan kata laluan pengguna root, dan memetakan sambungan pengesahan port Buat pangkalan data dan pengguna memberikan semua kebenaran ke pangkalan data

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Langkah -langkah untuk mengemas kini imej Docker adalah seperti berikut: Tarik tag imej terkini imej baru memadam imej lama untuk tag tertentu (pilihan) mulakan semula bekas (jika diperlukan)

Kaedah Melihat Proses Docker: 1. Docker CLI Command: Docker PS; 2. Systemd CLI Command: Sistem Status SistemCTL; 3. Docker mengarang arahan CLI: Docker-Compose PS; 4 Proses Explorer (Windows); 5. /Direktori Proc (Linux).

Anda boleh beralih ke sumber cermin domestik. Langkah -langkah adalah seperti berikut: 1. Edit fail konfigurasi /etc/docker/daemon.json dan tambahkan alamat sumber cermin; 2. Selepas menyimpan dan keluar, mulakan semula perkhidmatan Docker Sudo SystemCtl Docker untuk meningkatkan kelajuan muat turun dan kestabilan imej.
