У меня есть простой Dockerfile, который добавляет керас, подушку и не может понять, как добавить тензорную доску. Мой Dockerfile:
FROM tensorflow/tensorflow:latest-gpu-py3-jupyter
RUN pip3 install keras
RUN pip3 install Pillow
RUN mkdir /tmp/logs
CMD ["bash", "-c", "source /etc/bash.bashrc && jupyter notebook --notebook-dir=/tf --ip 0.0.0.0 --no-browser --allow-root"]
Для сборки
sudo docker build -t jjg .
Для запуска (8888 для юпитера, 6006 для тензорной доски)
sudo docker run --runtime=nvidia -it --rm -v ~/Documents:/tf/notebooks -p 8888:8888 -p 6006:6006 jjg:latest
Тензорная доска, работающая вручную, работает со следующим.
Получить идентификатор контейнера:
sudo docker ps
Запустить bash в этом контейнере (замените ??????? на id сверху)
sudo docker exec -it ??????? /bin/bash
Ручной запуск тензорной доски
tensorboard --logdir=/tmp/logs
Я хотел бы добавить "tenorboard --logdir = / tmp / logs" в строку CMD файла Dockerfile, чтобы я мог отбросить шаги, выполняемые вручную. Я пытался
CMD ["bash", "-c", "source /etc/bash.bashrc && jupyter notebook --notebook-dir=/tf --ip 0.0.0.0 --no-browser --allow-root && tensorboard --logdir=/tmp/logs"]
Но это не сработало. По сути, мой вопрос заключается в том, как запустить 2 вещи в CMD.