نوشتن فایل docker-compose بهینه تر

با && ؟ یعنی هر دو فرمان در یک خط اجرا کردین؟
مثلا اینجوری؟:

celery -A mahekan worker -f /home/worker.log
          && celery -A mahekan beat -f /home/beat.log
1 پسندیده

آهان گرفتم چی شد، باید دیتچ کنی، آپشن زیرو به هر دو اضافه کن، البته این نصف ماجراست، بایند کردن لاگ همچنان باقی میمونه

--detach

الان به هر دو نگاه کنین فقط اولی ها اجرا میشه

کجاش متوجه نشدم

دیتچ کردی؟

celery -A mahekan worker --logfile=logfile_worker.log --detach  &&
celery -A mahekan beat --logfile=logfile_beat.log --detach

کردم

الان هر دو توی پشت صحنه اجرا میشن دیگه

چطور متوقف کنم حالا :joy:

خروجی این چیه؟

ps aux|grep 'celery'
1 پسندیده

فقط worker اجرا شده

ps auxww | grep 'celery' | awk '{print $2}' | xargs kill -9

هر دوتا بودن ممنون

1 پسندیده

برای من هر دو اجرا میشه

1 پسندیده

kill: (10796): No such process

حتما پترن خروجی اولین پایپ فرق میکنه و $2 نتیجه درست نمیده،
دوباره اولی رو اجرا کن که pid و بگیریم

ps aux|grep 'celery'
1 پسندیده

ممنون اوکیه

الان کلا مشکل حل شد؟

اون id مربوط به فرمانیه که grep هم توش هست که celery رو هم توی دستورش داره، خود celery نیست، به فرمان kill که میرسی دیگه اون پروسه grep با اون pid وجود نداره که از بین بره.

ps auxww | grep ‘celery’ | awk ‘{print $2}’ | xargs kill -9

چیز خاصی نیست یه ضعف خنده دار و بی آزار در کامندیه که دادم. :grin:

Ex:

ps auxww | grep 'Hey, I don not exist' | awk '{print $2}' | xargs kill -9

—>

ps auxww | grep 'Hey, I don not exist'

—>

ps auxww | grep 'Hey, I don not exist' | awk '{print $2}'
1 پسندیده

توی داکر کار نمیکنه هنوز؟

توی داکر هم کار میکنه اما برای دیدن لاگ باید یه جوری به لاگ دسترسی داشته باشی،
مثلا با بایند کردن فایل لاگ