New Notebook docker images are not working

I am trying to setup the following jupyter based on these images, i have tried all 3 and yet same issues
I am super shocked how the entire internet does not have this reported or documented how to run jupyter with these images

quay.io/jupyter/pyspark-notebook:spark-3.5.3
quay.io/jupyter/all-spark-notebook:spark-3.5.3
quay.io/jupyter/base-notebook:python-3.12.7

Just try to run jupyter with these images, it does not work!!!
her eis sample docker compose/swarm yaml i used, i removed everything and made it basic setup and still same annoying Signal 15 Update notebook 7 annoying useless error

  jupyter1:
    image: quay.io/jupyter/pyspark-notebook:spark-3.5.3
    networks:
      - apps
    deploy:
      placement:
        constraints:
          - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter1.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter1-http.entrypoints=http"
        - "traefik.http.routers.jupyter1-http.rule=Host(`jupyter1.apps`)"
        
  jupyter2:
    image: quay.io/jupyter/all-spark-notebook:spark-3.5.3
    networks:
      - apps
    deploy:
      placement:
        constraints:
          - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter2.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter2-http.entrypoints=http"
        - "traefik.http.routers.jupyter2-http.rule=Host(`jupyter2.apps`)"

error logs

Entered start.sh with args: start-notebook.py
Running hooks in: /usr/local/bin/start-notebook.d as uid: 1000 gid: 100
Done running hooks in: /usr/local/bin/start-notebook.d
Running hooks in: /usr/local/bin/before-notebook.d as uid: 1000 gid: 100
Sourcing shell script: /usr/local/bin/before-notebook.d/10activate-conda-env.sh
Sourcing shell script: /usr/local/bin/before-notebook.d/10spark-config.sh
Done running hooks in: /usr/local/bin/before-notebook.d
Executing the command: start-notebook.py
[I 2024-12-08 12:57:52.432 ServerApp] jupyter_lsp | extension was successfully linked.
[I 2024-12-08 12:57:52.453 ServerApp] jupyter_server_mathjax | extension was successfully linked.
[I 2024-12-08 12:57:52.473 ServerApp] jupyter_server_terminals | extension was successfully linked.
[I 2024-12-08 12:57:52.495 ServerApp] jupyterlab | extension was successfully linked.
[I 2024-12-08 12:57:52.495 ServerApp] jupyterlab_git | extension was successfully linked.
[I 2024-12-08 12:57:52.512 ServerApp] nbclassic | extension was successfully linked.
[I 2024-12-08 12:57:52.513 ServerApp] nbdime | extension was successfully linked.
[I 2024-12-08 12:57:52.535 ServerApp] notebook | extension was successfully linked.
[I 2024-12-08 12:57:52.541 ServerApp] Writing Jupyter server cookie secret to /home/jovyan/.local/share/jupyter/runtime/jupyter_cookie_secret
[I 2024-12-08 12:57:53.592 ServerApp] notebook_shim | extension was successfully linked.
[I 2024-12-08 12:57:53.661 ServerApp] notebook_shim | extension was successfully loaded.
[I 2024-12-08 12:57:53.668 ServerApp] jupyter_lsp | extension was successfully loaded.
[I 2024-12-08 12:57:53.669 ServerApp] jupyter_server_mathjax | extension was successfully loaded.
[I 2024-12-08 12:57:53.673 ServerApp] jupyter_server_terminals | extension was successfully loaded.
[I 2024-12-08 12:57:53.682 LabApp] JupyterLab extension loaded from /opt/conda/lib/python3.11/site-packages/jupyterlab
[I 2024-12-08 12:57:53.683 LabApp] JupyterLab application directory is /opt/conda/share/jupyter/lab
[I 2024-12-08 12:57:53.684 LabApp] Extension Manager is 'pypi'.
[I 2024-12-08 12:57:53.734 ServerApp] jupyterlab | extension was successfully loaded.
[I 2024-12-08 12:57:53.750 ServerApp] jupyterlab_git | extension was successfully loaded.
[I 2024-12-08 12:57:53.763 ServerApp] nbclassic | extension was successfully loaded.
[I 2024-12-08 12:57:53.986 ServerApp] nbdime | extension was successfully loaded.
[I 2024-12-08 12:57:54.003 ServerApp] notebook | extension was successfully loaded.
[I 2024-12-08 12:57:54.004 ServerApp] Serving notebooks from local directory: /home/jovyan
[I 2024-12-08 12:57:54.005 ServerApp] Jupyter Server 2.12.5 is running at:
[I 2024-12-08 12:57:54.005 ServerApp] http://93779934cf3b:8888/lab?token=28db034c39a9cc50eb0709c7c30e82a98228a7b3e30587c1
[I 2024-12-08 12:57:54.005 ServerApp]     http://127.0.0.1:8888/lab?token=28db034c39a9cc50eb0709c7c30e82a98228a7b3e30587c1
[I 2024-12-08 12:57:54.005 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 2024-12-08 12:57:54.018 ServerApp] To access the server, open this file in a browser:
file:///home/jovyan/.local/share/jupyter/runtime/jpserver-7-open.html
Or copy and paste one of these URLs:
http://93779934cf3b:8888/lab?token=28db034c39a9cc50eb0709c7c30e82a98228a7b3e30587c1
http://127.0.0.1:8888/lab?token=28db034c39a9cc50eb0709c7c30e82a98228a7b3e30587c1
[I 2024-12-08 12:57:57.099 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
[C 2024-12-08 12:58:12.624 ServerApp] received signal 15, stopping
[I 2024-12-08 12:58:12.627 ServerApp] Shutting down 9 extensions
  _   _          _      _
 | | | |_ __  __| |__ _| |_ ___
 | |_| | '_ \/ _` / _` |  _/ -_)
  \___/| .__/\__,_\__,_|\__\___|
       |_|
Read the migration plan to Notebook 7 to learn about the new features and the actions to take if you are using extensions.
https://jupyter-notebook.readthedocs.io/en/latest/migrate_to_notebook7.html
Please note that updating to Notebook 7 might break some of your extensions.

jupyter3

  jupyter3:
    image: quay.io/jupyter/base-notebook:python-3.12.7
    user: root
    networks:
      - apps
    environment:
       - NB_UID=1000
       - NB_GID=1000
       - NOTEBOOK_ARGS='--allow-root'
    deploy:
      placement:
        constraints:
          - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter3.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter3-http.entrypoints=http"
        - "traefik.http.routers.jupyter3-http.rule=Host(`jupyter3.apps`)"

jupyter 3 errors

Entered start.sh with args: start-notebook.py
Running hooks in: /usr/local/bin/start-notebook.d as uid: 0 gid: 0
Done running hooks in: /usr/local/bin/start-notebook.d
Update jovyan's UID:GID to 1000:1000
userdel: group jovyan not removed because it is not the primary group of user jovyan.
Running hooks in: /usr/local/bin/before-notebook.d as uid: 0 gid: 0
Sourcing shell script: /usr/local/bin/before-notebook.d/10activate-conda-env.sh
Done running hooks in: /usr/local/bin/before-notebook.d
Running as jovyan: start-notebook.py
[I 2024-12-08 12:41:30.243 ServerApp] jupyter_lsp | extension was successfully linked.
[I 2024-12-08 12:41:30.261 ServerApp] jupyter_server_terminals | extension was successfully linked.
[I 2024-12-08 12:41:30.292 ServerApp] jupyterlab | extension was successfully linked.
[I 2024-12-08 12:41:30.310 ServerApp] nbclassic | extension was successfully linked.
[I 2024-12-08 12:41:30.332 ServerApp] notebook | extension was successfully linked.
[I 2024-12-08 12:41:30.338 ServerApp] Writing Jupyter server cookie secret to /home/jovyan/.local/share/jupyter/runtime/jupyter_cookie_secret
[I 2024-12-08 12:41:31.396 ServerApp] notebook_shim | extension was successfully linked.
[I 2024-12-08 12:41:31.489 ServerApp] notebook_shim | extension was successfully loaded.
[I 2024-12-08 12:41:31.500 ServerApp] jupyter_lsp | extension was successfully loaded.
[I 2024-12-08 12:41:31.505 ServerApp] jupyter_server_terminals | extension was successfully loaded.
[I 2024-12-08 12:41:31.512 LabApp] JupyterLab extension loaded from /opt/conda/lib/python3.12/site-packages/jupyterlab
[I 2024-12-08 12:41:31.512 LabApp] JupyterLab application directory is /opt/conda/share/jupyter/lab
[I 2024-12-08 12:41:31.514 LabApp] Extension Manager is 'pypi'.
[W 2024-12-08 12:41:31.516 LabApp] Failed to instantiate the extension manager pypi. Falling back to read-only manager.
    Traceback (most recent call last):
      File "/opt/conda/lib/python3.12/site-packages/jupyterlab/labapp.py", line 837, in initialize_handlers
        ext_manager = manager_factory(app_options, listings_config, self)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/opt/conda/lib/python3.12/site-packages/jupyterlab/extensions/__init__.py", line 46, in get_pypi_manager
        return PyPIExtensionManager(app_options, ext_options, parent)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/opt/conda/lib/python3.12/site-packages/jupyterlab/extensions/pypi.py", line 134, in __init__
        self._httpx_client = httpx.AsyncClient(proxies=proxies)
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    TypeError: AsyncClient.__init__() got an unexpected keyword argument 'proxies'
[I 2024-12-08 12:41:31.541 ServerApp] jupyterlab | extension was successfully loaded.
[I 2024-12-08 12:41:31.557 ServerApp] nbclassic | extension was successfully loaded.
[I 2024-12-08 12:41:31.576 ServerApp] notebook | extension was successfully loaded.
[I 2024-12-08 12:41:31.578 ServerApp] Serving notebooks from local directory: /home/jovyan
[I 2024-12-08 12:41:31.578 ServerApp] Jupyter Server 2.14.2 is running at:
[I 2024-12-08 12:41:31.578 ServerApp] http://70e4a345c7bb:8888/lab?token=f713140bdb4d3a604d69cd66009e9edd5d81b38473ac308f
[I 2024-12-08 12:41:31.578 ServerApp]     http://127.0.0.1:8888/lab?token=f713140bdb4d3a604d69cd66009e9edd5d81b38473ac308f
[I 2024-12-08 12:41:31.579 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 2024-12-08 12:41:31.594 ServerApp] 
    To access the server, open this file in a browser:
        file:///home/jovyan/.local/share/jupyter/runtime/jpserver-47-open.html
    Or copy and paste one of these URLs:
        http://70e4a345c7bb:8888/lab?token=f713140bdb4d3a604d69cd66009e9edd5d81b38473ac308f
        http://127.0.0.1:8888/lab?token=f713140bdb4d3a604d69cd66009e9edd5d81b38473ac308f
[I 2024-12-08 12:41:31.708 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
[C 2024-12-08 12:41:39.672 ServerApp] received signal 15, stopping
[C 2024-12-08 12:41:39.673 ServerApp] received signal 15, stopping
[I 2024-12-08 12:41:39.675 ServerApp] Shutting down 6 extensions
[I 2024-12-08 12:41:39.677 ServerApp] Shutting down 6 extensions
  _   _          _      _
 | | | |_ __  __| |__ _| |_ ___
 | |_| | '_ \/ _` / _` |  _/ -_)
  \___/| .__/\__,_\__,_|\__\___|
       |_| 
Read the migration plan to Notebook 7 to learn about the new features and the actions to take if you are using extensions.
https://jupyter-notebook.readthedocs.io/en/latest/migrate_to_notebook7.html
Please note that updating to Notebook 7 might break some of your extensions

all of these same similar error, with zero doc a=or online resource to help show solution to this annoying error
by default container should just work but not with jupyter

[I 2024-12-08 12:41:31.708 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
[C 2024-12-08 12:41:39.672 ServerApp] received signal 15, stopping
[C 2024-12-08 12:41:39.673 ServerApp] received signal 15, stopping
[I 2024-12-08 12:41:39.675 ServerApp] Shutting down 6 extensions
[I 2024-12-08 12:41:39.677 ServerApp] Shutting down 6 extensions
  _   _          _      _
 | | | |_ __  __| |__ _| |_ ___
 | |_| | '_ \/ _` / _` |  _/ -_)
  \___/| .__/\__,_\__,_|\__\___|
       |_| 
Read the migration plan to Notebook 7 to learn about the new features and the actions to take if you are using extensions.
https://jupyter-notebook.readthedocs.io/en/latest/migrate_to_notebook7.html
Please note that updating to Notebook 7 might break some of your extensions

here are my docker and docker compose versions

root@server:~# docker version
Client: Docker Engine - Community
 Version:           27.3.1
 API version:       1.47
 Go version:        go1.22.7
 Git commit:        ce12230
 Built:             Fri Sep 20 11:40:59 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          27.3.1
  API version:      1.47 (minimum version 1.24)
  Go version:       go1.22.7
  Git commit:       41ca978
  Built:            Fri Sep 20 11:40:59 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.7.22
  GitCommit:        7f7fdf5fed64eb6a7caf99b3e12efcf9d60e311c
 runc:
  Version:          1.1.14
  GitCommit:        v1.1.14-0-g2c9f560
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
  
  
root@server:~# docker compose version
Docker Compose version v2.29.7

What I Need Help With?

a docker-compose or docker run command with the images that will run jupyter notebook with zero errors

Thanks!

“Signal 15” is SIGTERM, sent to a process when another process intentionally wants it to stop. docker sends it during docker stop, and given that the logs indicate the server started successfully before receiving a SIGTERM later (~30s in the first logs, ~10s in the second), I would think docker is deciding to stop these containers for some reason - rather than the container itself deciding to stop. Looking at docker’s logs may give you more information.

I would also say you’re more likely to get help if you toned down your messages a little bit. A lot of people who may be able to help are volunteers, and are more likely to do so if your message is kinder and softer.

Good luck!

2 Likes

When i changed the docker images to old ones on dockerhub, they all worked fine

so are you still going to say it is not the docker images?

sorry for the tone, just out of frustration because was disappointed in a project this popular and no one else has reported this issue yet. so apology there

when i used these docker images, older ones on dockerhub they all worked fine

proof below

image: jupyter/base-notebook:python-3.11.6

Entered start.sh with args: jupyter lab --allow-root --NotebookApp.allow_root=true --NotebookApp.password=sha1:REDACTED
Running hooks in: /usr/local/bin/start-notebook.d as uid: 0 gid: 0
Done running hooks in: /usr/local/bin/start-notebook.d
Update jovyan's UID:GID to 1000:1000
userdel: group jovyan not removed because it is not the primary group of user jovyan.
Running hooks in: /usr/local/bin/before-notebook.d as uid: 0 gid: 0
Done running hooks in: /usr/local/bin/before-notebook.d
Running as jovyan: jupyter lab --allow-root --NotebookApp.allow_root=true --NotebookApp.password=sha1:REDACTED
[I 2024-12-09 05:39:23.926 ServerApp] Package jupyterlab took 0.0000s to import
[I 2024-12-09 05:39:23.974 ServerApp] Package jupyter_lsp took 0.0460s to import
[W 2024-12-09 05:39:23.974 ServerApp] A `_jupyter_server_extension_points` function was not found in jupyter_lsp. Instead, a `_jupyter_server_extension_paths` function was found and will be used for now. This function name will be deprecated in future releases of Jupyter Server.
[I 2024-12-09 05:39:23.996 ServerApp] Package jupyter_server_terminals took 0.0204s to import
[I 2024-12-09 05:39:24.006 ServerApp] Package nbclassic took 0.0083s to import
[W 2024-12-09 05:39:24.014 ServerApp] A `_jupyter_server_extension_points` function was not found in nbclassic. Instead, a `_jupyter_server_extension_paths` function was found and will be used for now. This function name will be deprecated in future releases of Jupyter Server.
[I 2024-12-09 05:39:24.016 ServerApp] Package notebook took 0.0000s to import
[I 2024-12-09 05:39:24.024 ServerApp] Package notebook_shim took 0.0000s to import
[W 2024-12-09 05:39:24.025 ServerApp] A `_jupyter_server_extension_points` function was not found in notebook_shim. Instead, a `_jupyter_server_extension_paths` function was found and will be used for now. This function name will be deprecated in future releases of Jupyter Server.
[I 2024-12-09 05:39:24.027 ServerApp] jupyter_lsp | extension was successfully linked.
[I 2024-12-09 05:39:24.042 ServerApp] jupyter_server_terminals | extension was successfully linked.
[W 2024-12-09 05:39:24.048 LabApp] 'allow_root' has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2024-12-09 05:39:24.048 LabApp] 'password' has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2024-12-09 05:39:24.059 ServerApp] ServerApp.password config is deprecated in 2.0. Use PasswordIdentityProvider.hashed_password.
[I 2024-12-09 05:39:24.060 ServerApp] jupyterlab | extension was successfully linked.
[I 2024-12-09 05:39:24.074 ServerApp] nbclassic | extension was successfully linked.
[I 2024-12-09 05:39:24.099 ServerApp] notebook | extension was successfully linked.
[I 2024-12-09 05:39:24.105 ServerApp] Writing Jupyter server cookie secret to /home/jovyan/.local/share/jupyter/runtime/jupyter_cookie_secret
[I 2024-12-09 05:39:25.074 ServerApp] notebook_shim | extension was successfully linked.
[I 2024-12-09 05:39:25.151 ServerApp] notebook_shim | extension was successfully loaded.
[I 2024-12-09 05:39:25.158 ServerApp] jupyter_lsp | extension was successfully loaded.
[I 2024-12-09 05:39:25.161 ServerApp] jupyter_server_terminals | extension was successfully loaded.
[I 2024-12-09 05:39:25.167 LabApp] JupyterLab extension loaded from /opt/conda/lib/python3.11/site-packages/jupyterlab
[I 2024-12-09 05:39:25.167 LabApp] JupyterLab application directory is /opt/conda/share/jupyter/lab
[I 2024-12-09 05:39:25.168 LabApp] Extension Manager is 'pypi'.
[I 2024-12-09 05:39:25.178 ServerApp] jupyterlab | extension was successfully loaded.
[I 2024-12-09 05:39:25.194 ServerApp] nbclassic | extension was successfully loaded.
[I 2024-12-09 05:39:25.208 ServerApp] notebook | extension was successfully loaded.
[I 2024-12-09 05:39:25.210 ServerApp] Serving notebooks from local directory: /home/jovyan
[I 2024-12-09 05:39:25.210 ServerApp] Jupyter Server 2.8.0 is running at:
[I 2024-12-09 05:39:25.210 ServerApp] http://127.0.0.1:8888/lab
[I 2024-12-09 05:39:25.211 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[I 2024-12-09 05:39:27.625 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
[I 2024-12-09 05:40:26.313 ServerApp] 302 GET / (@10.2.4.148) 1.88ms
[I 2024-12-09 05:40:26.324 LabApp] 302 GET /lab? (@10.2.4.148) 2.26ms
[I 2024-12-09 05:40:33.140 ServerApp] User REDACTED logged in.
[I 2024-12-09 05:40:33.142 ServerApp] 302 POST /login?next=%2Flab%3F (REDACTED@10.2.4.148) 2.67ms

image: jupyter/all-spark-notebook:spark-3.5.0

Entered start.sh with args: jupyter lab --allow-root --NotebookApp.allow_root=true --NotebookApp.password=<REDACTED>
Running hooks in: /usr/local/bin/start-notebook.d as uid: 0 gid: 0
Done running hooks in: /usr/local/bin/start-notebook.d
Update jovyan's UID:GID to 1000:1000
Running hooks in: /usr/local/bin/before-notebook.d as uid: 0 gid: 0
Sourcing shell script: /usr/local/bin/before-notebook.d/spark-config.sh
Done running hooks in: /usr/local/bin/before-notebook.d
Running as jovyan: jupyter lab --allow-root --NotebookApp.allow_root=true --NotebookApp.password=<REDACTED>
[I] Package jupyterlab took 0.0000s to import
[I] Package jupyter_lsp took 0.0554s to import
[W] A `_jupyter_server_extension_points` function was not found in jupyter_lsp.
[I] Package jupyter_server_mathjax took 0.0038s to import
[I] Package jupyter_server_terminals took 0.0217s to import
[I] Package jupyterlab_git took 0.1171s to import
[I] Package nbclassic took 0.0115s to import
[W] A `_jupyter_server_extension_points` function was not found in nbclassic.
[I] Package nbdime took 0.0000s to import
[I] Package notebook took 0.0000s to import
[I] Package notebook_shim took 0.0000s to import
[W] A `_jupyter_server_extension_points` function was not found in notebook_shim.
[I] jupyter_lsp | extension was successfully linked.
[I] jupyter_server_mathjax | extension was successfully linked.
[I] jupyter_server_terminals | extension was successfully linked.
[W] 'allow_root' has moved from NotebookApp to ServerApp.
[W] 'password' has moved from NotebookApp to ServerApp.
[W] ServerApp.password config is deprecated in 2.0. Use PasswordIdentityProvider.hashed_password.
[I] jupyterlab | extension was successfully linked.
[I] jupyterlab_git | extension was successfully linked.
[I] nbclassic | extension was successfully linked.
[I] nbdime | extension was successfully linked.
[I] notebook | extension was successfully linked.
[I] Writing Jupyter server cookie secret to /home/jovyan/.local/share/jupyter/runtime/jupyter_cookie_secret
[I] notebook_shim | extension was successfully linked.
[I] notebook_shim | extension was successfully loaded.
[I] jupyter_lsp | extension was successfully loaded.
[I] jupyter_server_mathjax | extension was successfully loaded.
[I] jupyter_server_terminals | extension was successfully loaded.
[I] JupyterLab extension loaded from /opt/conda/lib/python3.11/site-packages/jupyterlab
[I] JupyterLab application directory is /opt/conda/share/jupyter/lab
[I] Extension Manager is 'pypi'.
[I] jupyterlab | extension was successfully loaded.
[I] jupyterlab_git | extension was successfully loaded.
[I] nbclassic | extension was successfully loaded.
[I] nbdime | extension was successfully loaded.
[I] notebook | extension was successfully loaded.
[I] Serving notebooks from local directory: /home/jovyan
[I] Jupyter Server 2.8.0 is running at:
[I] http://127.0.0.1:8888/lab
[I] Use Control-C to stop this server and shut down all kernels.
[I] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, etc.
[I] 302 GET / (@<REDACTED_IP>) 1.92ms
[I] 302 GET /lab? (@<REDACTED_IP>) 1.97ms
[I] User <REDACTED_USER> logged in.
[I] 302 POST /login?next=%2Flab%3F (<REDACTED_USER>@<REDACTED_IP>) 4.70ms

so as you all can see, the new quay docker images are not working

as i mentioned, if anyone has a working container of the new quay images below, please post your docker run command and container logs below

quay.io/jupyter/pyspark-notebook:spark-3.5.3
quay.io/jupyter/all-spark-notebook:spark-3.5.3
quay.io/jupyter/base-notebook:python-3.12.7

thanks all!

I’ve run the compose file (removing only the placement.constraints config, since I don’t have a dev-1 node), and all containers start and run just fine, so it is not the case that the images are generally broken.

To be precise, I ran this file with docker-compose up, since what was provided was not complete enough to run:

services:
  jupyter1:
    image: quay.io/jupyter/pyspark-notebook:spark-3.5.3
    # specify amd64
    # platform: linux/amd64
    networks:
      - apps
    deploy:
      # placement:
      #   constraints:
      #     - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter1.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter1-http.entrypoints=http"
        - "traefik.http.routers.jupyter1-http.rule=Host(`jupyter1.apps`)"
        
  jupyter2:
    image: quay.io/jupyter/all-spark-notebook:spark-3.5.3
    # specify amd64
    # platform: linux/amd64
    networks:
      - apps
    deploy:
      # placement:
      #   constraints:
      #     - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter2.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter2-http.entrypoints=http"
        - "traefik.http.routers.jupyter2-http.rule=Host(`jupyter2.apps`)"
  jupyter3:
    image: quay.io/jupyter/base-notebook:python-3.12.7
    user: root
    # specify amd64
    # platform: linux/amd64
    networks:
      - apps
    environment:
       - NB_UID=1000
       - NB_GID=1000
       - NOTEBOOK_ARGS='--allow-root'
    deploy:
      placement:
        constraints:
          - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter3.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter3-http.entrypoints=http"
        - "traefik.http.routers.jupyter3-http.rule=Host(`jupyter3.apps`)"

networks:
  apps:
    name: apps

and since these are moving-target tags, I tested with last week’s build, SHA256 ad805fa0f9ab on arm64 and SHA256 ac1e418c4061 on amd64.

As @yuvipanda mentioned, signal 15 means something outside the container is terminating it, perhaps something in the swarm controllers, etc. such as an out-of-memory error or security policy or health check or something similar. The container doesn’t have any more information than it is already reporting. This should hopefully be logged somewhere, but it would be outside the container. It might show up in docker inspect yourdeployment-jupyter3-1, or for your swarm services, I’m not sure. So while you are probably right that something relevant changed in the images since switching the image removes the error in your situation, it is not the case that the images don’t work in general. It is something specific to your deployment, and we don’t yet have sufficient information to reproduce the issue.

1 Like

are you saying you can docker compose up with this and it ran fine?

services:
  jupyter1:
    image: quay.io/jupyter/pyspark-notebook:spark-3.5.3
    # specify amd64
    # platform: linux/amd64
    networks:
      - apps
    deploy:
      # placement:
      #   constraints:
      #     - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter1.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter1-http.entrypoints=http"
        - "traefik.http.routers.jupyter1-http.rule=Host(`jupyter1.apps`)"
        
  jupyter2:
    image: quay.io/jupyter/all-spark-notebook:spark-3.5.3
    # specify amd64
    # platform: linux/amd64
    networks:
      - apps
    deploy:
      # placement:
      #   constraints:
      #     - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter2.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter2-http.entrypoints=http"
        - "traefik.http.routers.jupyter2-http.rule=Host(`jupyter2.apps`)"
  jupyter3:
    image: quay.io/jupyter/base-notebook:python-3.12.7
    user: root
    # specify amd64
    # platform: linux/amd64
    networks:
      - apps
    environment:
       - NB_UID=1000
       - NB_GID=1000
       - NOTEBOOK_ARGS='--allow-root'
    deploy:
      placement:
        constraints:
          - node.labels.node == dev-1
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.docker.network=apps"
        - "traefik.http.services.jupyter3.loadbalancer.server.port=8888"
        - "traefik.http.routers.jupyter3-http.entrypoints=http"
        - "traefik.http.routers.jupyter3-http.rule=Host(`jupyter3.apps`)"

networks:
  apps:
    name: apps

can you share the output of your docker compose with logs -f to see some of the output and if you dont sharing them here?

you dont have to use my docker yaml file, even a single docker run for just one jupyter container is fine, just want to see the newer images and see output that they work

the signal 15 issue, like i said i changed image to older version and worked with no signal term, everything else same except changing image to older

Quoting my reply from GitHub (in future please do not post across multiple places, or at least link to other places where you posted):

These docker images are maintained in GitHub - jupyter/docker-stacks: Ready-to-run Docker images containing Jupyter applications so you are more likely to get attention of folks who may be able to help if you post your issue over there.

I am super shocked how the entire internet does not have this reported or documented how to run jupyter with these images

It might indicate that this is not a problem with the images.

[C 2024-12-08 12:58:12.624 ServerApp] received signal 15, stopping

It sounds like the issue may be originating from outside of the Jupyter, or you may be misconfiguring it. I would start by looking at reports in jupyter/docker-stacks search results for “received signal 15, stopping”.

Of note, some of the the earlier reports suggest that misconfiguring the port (i.e. not using JUPYTER_PORT) may lead to healthcheck failures and thus the container being killed.

1 Like

so what docker run command will work with the image?

i keep asking for one thing. show me docker run command that works so i can see what env i need to have etc

where is doc that shows this also? the JUPYTER_PORT thing, where is this documented?

and from what i have, am i not using the correct port? what port should it be

again i only changed image to older one on dockerhub and it worked

just kinda of frustrated when i am asking for one thing and no one seems to want to do it

@krassowski the links you linked to, are they using the latest quay images i am mentioning? title of my post is about latest images do not work

just kinda of frustrated when i am asking for one thing and no one seems to want to do it

You seem to miss the point. You are asking in wrong place and being impolite. If there is a bug with the docker images please report it on GitHub - jupyter/docker-stacks: Ready-to-run Docker images containing Jupyter applications.

where is doc that shows this also? the JUPYTER_PORT thing, where is this documented?

Documentation is on Jupyter Docker Stacks — Docker Stacks documentation. The search function works very well for me, it is documented here:

https://jupyter-docker-stacks.readthedocs.io/en/latest/using/common.html#additional-runtime-configurations

@krassowski the links you linked to, are they using the latest quay images i am mentioning? title of my post is about latest images do not work

I would not expect issues reported in the past to use the latest image.

1 Like

I already said i dont mean to be, it is all out of frustration
it takes a lot to be posting online to get help
it is usually after several hours of back and forth

sometimes the frustration cant be hidden thus showing in tone of messages
but i dont mean to be impolite

i will run the docker run commands without docker compose and report back what i get and i guess back engineer with docker compose to see if i can get the images working

1 Like

Yes, that is what I said.

can you share the output of your docker compose with logs -f

Yes, including interacting with jupyter3, opening, running, and saving some files:

logs
> docker compose up
[+] Running 3/0
 âś” Container testc-jupyter1-1  Created                                                                                                                                                                                                                                                                          0.0s
 âś” Container testc-jupyter2-1  Created                                                                                                                                                                                                                                                                          0.0s
 âś” Container testc-jupyter3-1  Created                                                                                                                                                                                                                                                                        0.1s
Attaching to jupyter1-1, jupyter2-1, jupyter3-1
jupyter2-1  | Entered start.sh with args: start-notebook.py
jupyter1-1  | Entered start.sh with args: start-notebook.py
jupyter2-1  | Running hooks in: /usr/local/bin/start-notebook.d as uid: 1000 gid: 100
jupyter2-1  | Done running hooks in: /usr/local/bin/start-notebook.d
jupyter1-1  | Running hooks in: /usr/local/bin/start-notebook.d as uid: 1000 gid: 100
jupyter1-1  | Done running hooks in: /usr/local/bin/start-notebook.d
jupyter3-1  | Entered start.sh with args: start-notebook.py
jupyter3-1  | Running hooks in: /usr/local/bin/start-notebook.d as uid: 0 gid: 0
jupyter3-1  | Done running hooks in: /usr/local/bin/start-notebook.d
jupyter1-1  | Running hooks in: /usr/local/bin/before-notebook.d as uid: 1000 gid: 100
jupyter1-1  | Sourcing shell script: /usr/local/bin/before-notebook.d/10activate-conda-env.sh
jupyter2-1  | Running hooks in: /usr/local/bin/before-notebook.d as uid: 1000 gid: 100
jupyter2-1  | Sourcing shell script: /usr/local/bin/before-notebook.d/10activate-conda-env.sh
jupyter3-1  | Update jovyan's UID:GID to 1000:1000
jupyter3-1  | userdel: group jovyan not removed because it is not the primary group of user jovyan.
jupyter3-1  | Running hooks in: /usr/local/bin/before-notebook.d as uid: 0 gid: 0
jupyter3-1  | Sourcing shell script: /usr/local/bin/before-notebook.d/10activate-conda-env.sh
jupyter1-1  | Sourcing shell script: /usr/local/bin/before-notebook.d/10spark-config.sh
jupyter1-1  | Done running hooks in: /usr/local/bin/before-notebook.d
jupyter1-1  | Executing the command: start-notebook.py
jupyter3-1  | Done running hooks in: /usr/local/bin/before-notebook.d
jupyter3-1  | Running as jovyan: start-notebook.py
jupyter2-1  | Sourcing shell script: /usr/local/bin/before-notebook.d/10spark-config.sh
jupyter2-1  | Done running hooks in: /usr/local/bin/before-notebook.d
jupyter2-1  | Executing the command: start-notebook.py
jupyter3-1  | [I 2024-12-10 12:03:20.113 ServerApp] jupyter_lsp | extension was successfully linked.
jupyter3-1  | [I 2024-12-10 12:03:20.115 ServerApp] jupyter_server_terminals | extension was successfully linked.
jupyter3-1  | [I 2024-12-10 12:03:20.118 ServerApp] jupyterlab | extension was successfully linked.
jupyter3-1  | [I 2024-12-10 12:03:20.120 ServerApp] nbclassic | extension was successfully linked.
jupyter3-1  | [I 2024-12-10 12:03:20.122 ServerApp] notebook | extension was successfully linked.
jupyter3-1  | [I 2024-12-10 12:03:20.124 ServerApp] Writing Jupyter server cookie secret to /home/jovyan/.local/share/jupyter/runtime/jupyter_cookie_secret
jupyter1-1  | [I 2024-12-10 12:03:20.201 ServerApp] jupyter_lsp | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.204 ServerApp] jupyter_server_mathjax | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.206 ServerApp] jupyter_server_terminals | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.208 ServerApp] jupyterlab | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.208 ServerApp] jupyterlab_git | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.210 ServerApp] nbclassic | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.210 ServerApp] nbdime | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.212 ServerApp] notebook | extension was successfully linked.
jupyter3-1  | [I 2024-12-10 12:03:20.283 ServerApp] notebook_shim | extension was successfully linked.
jupyter3-1  | [I 2024-12-10 12:03:20.293 ServerApp] notebook_shim | extension was successfully loaded.
jupyter3-1  | [I 2024-12-10 12:03:20.294 ServerApp] jupyter_lsp | extension was successfully loaded.
jupyter3-1  | [I 2024-12-10 12:03:20.294 ServerApp] jupyter_server_terminals | extension was successfully loaded.
jupyter3-1  | [I 2024-12-10 12:03:20.295 LabApp] JupyterLab extension loaded from /opt/conda/lib/python3.12/site-packages/jupyterlab
jupyter3-1  | [I 2024-12-10 12:03:20.295 LabApp] JupyterLab application directory is /opt/conda/share/jupyter/lab
jupyter3-1  | [I 2024-12-10 12:03:20.296 LabApp] Extension Manager is 'pypi'.
jupyter3-1  | [W 2024-12-10 12:03:20.296 LabApp] Failed to instantiate the extension manager pypi. Falling back to read-only manager.
jupyter3-1  |     Traceback (most recent call last):
jupyter3-1  |       File "/opt/conda/lib/python3.12/site-packages/jupyterlab/labapp.py", line 837, in initialize_handlers
jupyter3-1  |         ext_manager = manager_factory(app_options, listings_config, self)
jupyter3-1  |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
jupyter3-1  |       File "/opt/conda/lib/python3.12/site-packages/jupyterlab/extensions/__init__.py", line 46, in get_pypi_manager
jupyter3-1  |         return PyPIExtensionManager(app_options, ext_options, parent)
jupyter3-1  |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
jupyter3-1  |       File "/opt/conda/lib/python3.12/site-packages/jupyterlab/extensions/pypi.py", line 134, in __init__
jupyter3-1  |         self._httpx_client = httpx.AsyncClient(proxies=proxies)
jupyter3-1  |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
jupyter3-1  |     TypeError: AsyncClient.__init__() got an unexpected keyword argument 'proxies'
jupyter3-1  | [I 2024-12-10 12:03:20.298 ServerApp] jupyterlab | extension was successfully loaded.
jupyter3-1  | [I 2024-12-10 12:03:20.300 ServerApp] nbclassic | extension was successfully loaded.
jupyter3-1  | [I 2024-12-10 12:03:20.302 ServerApp] notebook | extension was successfully loaded.
jupyter3-1  | [I 2024-12-10 12:03:20.302 ServerApp] Serving notebooks from local directory: /home/jovyan
jupyter3-1  | [I 2024-12-10 12:03:20.302 ServerApp] Jupyter Server 2.14.2 is running at:
jupyter3-1  | [I 2024-12-10 12:03:20.302 ServerApp] http://782acafd072b:8888/lab?token=9983871d867649e543528ea249fbc6f3b1e642ed35dd687c
jupyter3-1  | [I 2024-12-10 12:03:20.302 ServerApp]     http://127.0.0.1:8888/lab?token=9983871d867649e543528ea249fbc6f3b1e642ed35dd687c
jupyter3-1  | [I 2024-12-10 12:03:20.302 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
jupyter3-1  | [C 2024-12-10 12:03:20.304 ServerApp]
jupyter3-1  |
jupyter3-1  |     To access the server, open this file in a browser:
jupyter3-1  |         file:///home/jovyan/.local/share/jupyter/runtime/jpserver-47-open.html
jupyter3-1  |     Or copy and paste one of these URLs:
jupyter3-1  |         http://782acafd072b:8888/lab?token=9983871d867649e543528ea249fbc6f3b1e642ed35dd687c
jupyter3-1  |         http://127.0.0.1:8888/lab?token=9983871d867649e543528ea249fbc6f3b1e642ed35dd687c
jupyter3-1  | [I 2024-12-10 12:03:20.313 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
jupyter1-1  | [I 2024-12-10 12:03:20.369 ServerApp] notebook_shim | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.379 ServerApp] notebook_shim | extension was successfully loaded.
jupyter1-1  | [I 2024-12-10 12:03:20.380 ServerApp] jupyter_lsp | extension was successfully loaded.
jupyter1-1  | [I 2024-12-10 12:03:20.380 ServerApp] jupyter_server_mathjax | extension was successfully loaded.
jupyter1-1  | [I 2024-12-10 12:03:20.381 ServerApp] jupyter_server_terminals | extension was successfully loaded.
jupyter1-1  | [I 2024-12-10 12:03:20.383 LabApp] JupyterLab extension loaded from /opt/conda/lib/python3.11/site-packages/jupyterlab
jupyter1-1  | [I 2024-12-10 12:03:20.383 LabApp] JupyterLab application directory is /opt/conda/share/jupyter/lab
jupyter1-1  | [I 2024-12-10 12:03:20.383 LabApp] Extension Manager is 'pypi'.
jupyter1-1  | [I 2024-12-10 12:03:20.391 ServerApp] jupyterlab | extension was successfully loaded.
jupyter1-1  | [I 2024-12-10 12:03:20.393 ServerApp] jupyterlab_git | extension was successfully loaded.
jupyter1-1  | [I 2024-12-10 12:03:20.395 ServerApp] nbclassic | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.422 ServerApp] jupyter_lsp | extension was successfully linked.
jupyter2-1  | [I 2024-12-10 12:03:20.424 ServerApp] jupyter_server_mathjax | extension was successfully linked.
jupyter2-1  | [I 2024-12-10 12:03:20.426 ServerApp] jupyter_server_terminals | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.426 ServerApp] nbdime | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.428 ServerApp] jupyterlab | extension was successfully linked.
jupyter2-1  | [I 2024-12-10 12:03:20.428 ServerApp] jupyterlab_git | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.428 ServerApp] notebook | extension was successfully loaded.
jupyter1-1  | [I 2024-12-10 12:03:20.429 ServerApp] Serving notebooks from local directory: /home/jovyan
jupyter1-1  | [I 2024-12-10 12:03:20.429 ServerApp] Jupyter Server 2.14.2 is running at:
jupyter1-1  | [I 2024-12-10 12:03:20.429 ServerApp] http://cdb65a021583:8888/lab?token=0fe8babbe7bf01a46d9ac47b434e6b11e404642dc8ab17aa
jupyter1-1  | [I 2024-12-10 12:03:20.429 ServerApp]     http://127.0.0.1:8888/lab?token=0fe8babbe7bf01a46d9ac47b434e6b11e404642dc8ab17aa
jupyter1-1  | [I 2024-12-10 12:03:20.429 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
jupyter2-1  | [I 2024-12-10 12:03:20.430 ServerApp] nbclassic | extension was successfully linked.
jupyter2-1  | [I 2024-12-10 12:03:20.430 ServerApp] nbdime | extension was successfully linked.
jupyter1-1  | [C 2024-12-10 12:03:20.430 ServerApp]
jupyter1-1  |
jupyter1-1  |     To access the server, open this file in a browser:
jupyter1-1  |         file:///home/jovyan/.local/share/jupyter/runtime/jpserver-7-open.html
jupyter1-1  |     Or copy and paste one of these URLs:
jupyter1-1  |         http://cdb65a021583:8888/lab?token=0fe8babbe7bf01a46d9ac47b434e6b11e404642dc8ab17aa
jupyter1-1  |         http://127.0.0.1:8888/lab?token=0fe8babbe7bf01a46d9ac47b434e6b11e404642dc8ab17aa
jupyter2-1  | [I 2024-12-10 12:03:20.432 ServerApp] notebook | extension was successfully linked.
jupyter1-1  | [I 2024-12-10 12:03:20.561 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
jupyter2-1  | [I 2024-12-10 12:03:20.570 ServerApp] notebook_shim | extension was successfully linked.
jupyter2-1  | [I 2024-12-10 12:03:20.579 ServerApp] notebook_shim | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.580 ServerApp] jupyter_lsp | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.581 ServerApp] jupyter_server_mathjax | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.581 ServerApp] jupyter_server_terminals | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.583 LabApp] JupyterLab extension loaded from /opt/conda/lib/python3.11/site-packages/jupyterlab
jupyter2-1  | [I 2024-12-10 12:03:20.583 LabApp] JupyterLab application directory is /opt/conda/share/jupyter/lab
jupyter2-1  | [I 2024-12-10 12:03:20.583 LabApp] Extension Manager is 'pypi'.
jupyter2-1  | [I 2024-12-10 12:03:20.590 ServerApp] jupyterlab | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.592 ServerApp] jupyterlab_git | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.593 ServerApp] nbclassic | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.621 ServerApp] nbdime | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.623 ServerApp] notebook | extension was successfully loaded.
jupyter2-1  | [I 2024-12-10 12:03:20.623 ServerApp] Serving notebooks from local directory: /home/jovyan
jupyter2-1  | [I 2024-12-10 12:03:20.623 ServerApp] Jupyter Server 2.14.2 is running at:
jupyter2-1  | [I 2024-12-10 12:03:20.623 ServerApp] http://4e6514eb46e4:8888/lab?token=60c97f9b424d07707b4d614c75bfadb8b46e58393359948c
jupyter2-1  | [I 2024-12-10 12:03:20.623 ServerApp]     http://127.0.0.1:8888/lab?token=60c97f9b424d07707b4d614c75bfadb8b46e58393359948c
jupyter2-1  | [I 2024-12-10 12:03:20.623 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
jupyter2-1  | [C 2024-12-10 12:03:20.624 ServerApp]
jupyter2-1  |
jupyter2-1  |     To access the server, open this file in a browser:
jupyter2-1  |         file:///home/jovyan/.local/share/jupyter/runtime/jpserver-7-open.html
jupyter2-1  |     Or copy and paste one of these URLs:
jupyter2-1  |         http://4e6514eb46e4:8888/lab?token=60c97f9b424d07707b4d614c75bfadb8b46e58393359948c
jupyter2-1  |         http://127.0.0.1:8888/lab?token=60c97f9b424d07707b4d614c75bfadb8b46e58393359948c
jupyter2-1  | [I 2024-12-10 12:03:20.846 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
jupyter3-1  | [W 2024-12-10 12:03:32.368 LabApp] Could not determine jupyterlab build status without nodejs
jupyter3-1  | [I 2024-12-10 12:03:36.273 ServerApp] Creating new notebook in
jupyter3-1  | [I 2024-12-10 12:03:36.330 ServerApp] Writing notebook-signing key to /home/jovyan/.local/share/jupyter/notebook_secret
jupyter3-1  | [I 2024-12-10 12:03:36.607 ServerApp] Kernel started: 66b11eb4-b7df-4974-ac1d-6f5a93035f8e
jupyter3-1  | [I 2024-12-10 12:03:36.962 ServerApp] Connecting to kernel 66b11eb4-b7df-4974-ac1d-6f5a93035f8e.
jupyter3-1  | [I 2024-12-10 12:03:36.963 ServerApp] Connecting to kernel 66b11eb4-b7df-4974-ac1d-6f5a93035f8e.
jupyter3-1  | [I 2024-12-10 12:03:36.964 ServerApp] Connecting to kernel 66b11eb4-b7df-4974-ac1d-6f5a93035f8e.
jupyter3-1  | [I 2024-12-10 12:03:39.295 ServerApp] Saving file at /Untitled.ipynb
jupyter3-1  | [I 2024-12-10 12:03:46.833 ServerApp] Saving file at /save.ipynb
jupyter3-1  | [I 2024-12-10 12:03:48.963 ServerApp] Saving file at /save.ipynb
jupyter3-1  | [I 2024-12-10 12:03:54.520 ServerApp] Starting buffering for 66b11eb4-b7df-4974-ac1d-6f5a93035f8e:b1d63c6f-eb55-44c9-a1f7-d19ac18bcc07
jupyter3-1  | [I 2024-12-10 12:03:57.915 ServerApp] Kernel shutdown: 66b11eb4-b7df-4974-ac1d-6f5a93035f8e
Gracefully stopping... (press Ctrl+C again to force)
[+] Stopping 3/3
 âś” Container testc-jupyter3-1  Stopped                                                                                                                                                                                                                                                                          0.5s
 âś” Container testc-jupyter2-1  Stopped                                                                                                                                                                                                                                                                          0.4s
 âś” Container testc-jupyter1-1  Stopped

As we have been trying to communicate in a number of ways now, it is not something fundamental in the images, which are shown here and above to work, but something about the deployment context that is sending termination signals to the containers, such as a health check, so that is where to start looking for what is killing your containers.

You can check the health status of a container with e.g.

docker inspect CONTAINER_NAME | jq '.[].State.Health'

For example, when I run:

docker inspect testc-jupyter3-1 | jq '.[].State.Health'

I get

{
  "Status": "healthy",
  "FailingStreak": 0,
  "Log": [
    {
      "Start": "2024-12-10T12:19:40.598470385Z",
      "End": "2024-12-10T12:19:40.783537177Z",
      "ExitCode": 0,
      "Output": "b'{\"version\": \"2.14.2\"}'\n"
    },
    {
      "Start": "2024-12-10T12:19:43.785677345Z",
      "End": "2024-12-10T12:19:43.97966822Z",
      "ExitCode": 0,
      "Output": "b'{\"version\": \"2.14.2\"}'\n"
    },
    {
      "Start": "2024-12-10T12:19:46.981469513Z",
      "End": "2024-12-10T12:19:47.157821097Z",
      "ExitCode": 0,
      "Output": "b'{\"version\": \"2.14.2\"}'\n"
    },
    {
      "Start": "2024-12-10T12:19:50.159314501Z",
      "End": "2024-12-10T12:19:50.329392167Z",
      "ExitCode": 0,
      "Output": "b'{\"version\": \"2.14.2\"}'\n"
    },
    {
      "Start": "2024-12-10T12:19:53.330834127Z",
      "End": "2024-12-10T12:19:53.50469821Z",
      "ExitCode": 0,
      "Output": "b'{\"version\": \"2.14.2\"}'\n"
    }
  ]
}

If you are using swarm, there is likely something similar for the swarm Service, but I don’t know what it is.

You can try setting the healthcheck field in your services to something that always passes, like:

    healthcheck:
      test: ["CMD", "true"]
1 Like