Rumah > Soal Jawab > teks badan
Projek berjalan di bawah docker, dan kini terdapat keperluan untuk crontab Saya ingin menambah crontab di bawah docker, tetapi saya mendapati ia tidak boleh ditambah. Bagaimanakah pakar yang menggunakan docker menambah crontab mereka sendiri di bawah docker?
Projek ini menggunakan docker-compose 2.0
Sistem ini dilengkapi dengan ubuntu
Bahasanya ialah php7
怪我咯2017-05-24 11:34:55
Pendekatan saya:
1, pasang crontab
2 dalam Dockerfile, dan petakannya dengan volume
把本地的 etc/crontab
fail. Sudah tentu, anda juga boleh menulisnya terus dalam Dockerfile
3, dan gunakan penyelia untuk memulakan aplikasi utama dan crontab
Malah, menggunakan crontab tidak lebih daripada: pemasangan, konfigurasi dan permulaan. Dua langkah pertama ditulis terus dalam Dockerfile semasa membina. Kuncinya ialah bagaimana untuk memulakan, kerana Docker hanya menerima satu CMD dan tidak boleh memulakan aplikasi utama dan crontab pada masa yang sama. Hanya gunakan penyelia.
PHPz2017-05-24 11:34:55
1.Dockerfile adalah seperti berikut
FROM centos
MAINTAINER zhaojunlike<zhaojunlike@gmail.com>
ADD ./crond/task.sh /server/task.sh
##安装并添加任务到crontab
RUN yum install crontabs -y \
&& (crontab -l; echo "*/1 * * * * /server/task.sh >>/var/log/task.log" ) | crontab
CMD crond
Anda boleh menambahkannya ke docker-compose untuk membina
2 Anda boleh menggunakan skrip lain untuk menulis program daemon untuk mensimulasikan pelaksanaan crontab
.3 Laksanakannya pada hos (tidak disyorkan)
.