Este comando docker funciona como se esperaba:
docker run -i -t -p 7778:8888 continuumio/miniconda3 /bin/bash -c "/opt/conda/bin/conda install jupyter -y --quiet && mkdir /opt/notebooks && /opt/conda/bin/jupyter notebook --notebook-dir=/opt/notebooks --ip='*' --port=8888 --no-browser --allow-root"Comienza miniconda con la versión de python 3 instalada. El problema es que me genera una contraseña aleatoria para acceder a jupyter cuando voy a...
Y no hay manera de cambiar la contraseña. La única forma es crear o actualizar el archivo de configuración jupyter_notebook_config.py que se encuentra en el directorio de inicio (subcarpeta: ~/.jupyter) ¿Cómo guardo este archivo en el host y lo monto usando el parámetro -v?
Puedo hacerlo manualmente si sigo estos 3 pasos:
1) Inicie sesión en el contenedor docker de ipython
docker exec -it 6cbc bash2) Ejecute el siguiente comando...
jupyter notebook --generate-config3) Copie el archivo de configuración al contenedor usando un comando como este...
docker cp ipython_kernel_config.py 6cbc8d829e4a:/.jupyter/jupyter_notebook_config.pyEstoy buscando una manera de fusionar estos 3 pasos en el comando de ejecución de la ventana acoplable.
¿Ha intentado agregar un montaje de volumen al comando de ejecución?
Algo como esto.
docker run -i -t -v /tmp/.jupyter:/.jupyter/ -p 7778:8888 continuumio/miniconda3 /bin/bash -c "/opt/conda/bin/conda install jupyter -y --quiet && mkdir /opt/notebooks && /opt/conda/bin/jupyter notebook --notebook-dir=/opt/notebooks --ip='*' --port=8888 --no-browser --allow-root" Esto supone que tiene un directorio /tmp/.jupyter y no dude en cambiar a otra cosa.
Además, este es un comando complicado, ¿alguna razón por la que no cree su propia imagen usando un Dockerfile? Aquí hay un ejemplo aproximado, no lo he probado, por lo que probablemente haya algunos errores tipográficos y de sintaxis, pero entiende la idea.
FROM continuumio/miniconda3 RUN /opt/conda/bin/conda install jupyter -y --quiet RUN mkdir /opt/notebooks # COPY in your custom config COPY ipython_kernel_config.py /.jupyter/jupyter_notebook_config.py EXPOSE 8888 # RUN the notebook CMD ["/opt/conda/bin/jupyter", "notebook", "--notebook-dir=/opt/notebooks", "--ip='*'", "--port=8888", "--no-browser", "--allow-root"]Para compilar y ejecutar, haría algo como esto.
docker build -t myminiconda3 . docker run -it -p 7778:8888 myminiconda3incluso puede montar en sus archivos locales si lo desea.
docker run -it -v `pwd`:/mycode -p 7778:8888 myminiconda3E incluso correr como un demonio
docker run -d -v `pwd`:/mycode -p 7778:8888 myminiconda3