Остановка сценария Bash, запущенного с помощью Docker
Код Dockerfile выглядит следующим образом:
FROM python:3.10
COPY ./ /data/
WORKDIR /data/
RUN pip install pipenv
RUN pipenv install
RUN pipenv run python src/manage.py makemigrations
RUN pipenv run python src/manage.py migrate
# Copy the start script
COPY start.sh /start.sh
RUN chmod +x /start.sh
ENTRYPOINT ["/start.sh"]
А код моего скрипта выглядит следующим образом
#!/bin/bash
# Start the background process
pipenv run python src/manage.py send_email &
# Start the Django development server
pipenv run python src/manage.py runserver --insecure 0.0.0.0:8000
Проблема в том, что send_email был запрограммирован на отправку письма каждую минуту в качестве теста, и я не могу остановить скрипт.
Вот шаги, которые я выполнил, чтобы попытаться отменить этот процесс:
- Остановите контейнер:
docker stop xxx
. - Убрать контейнер:
docker rm xxx
. - Удалите изображение:
docker rmi test:01
. - Удалите файл start.sh. .
- Очистите:
docker system prune
.
Но письма продолжают приходить ко мне. Я также попытался найти процесс с помощью "ps aux", но его там нет. Может ли кто-нибудь помочь мне, пожалуйста? Я вызвал спам-атаку на себя.