Skip to main content
 首页 » 编程设计

port之更改 iPython 笔记本服务器/Jupyter 的默认端口

2024年11月24日13mayingbao

我正在尝试在防火墙后面的机器上运行 ipython notebook/jupyter 服务器。唯一打开的端口是端口 80。所以想知道如何将默认端口从 8890 更改为 80?

我已经运行了以下命令 ipython profile create创建配置文件。

然后编辑ipython_notebook_config.py并编辑它以包含以下内容:

c = get_config() 
c.NotebookApp.port = 80 

当我尝试运行 python notebook 时。我收到以下错误:
ERROR: the notebook server could not be started because no available port could be found.
然而,似乎没有其他东西在使用端口 80。Apache 不会在启动时启动并被禁用。我什至使用 netstat 来查看每个端口的使用情况。
$ sudo netstat -lnp 
Active Internet connections (only servers) 
Proto Recv-Q Send-Q Local Address           Foreign Address                 State       PID/Program name 
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      1226/vsftpd      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1532/sshd        
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      3433/cupsd       
tcp        0      0 127.0.0.1:5984          0.0.0.0:*               LISTEN      1410/beam.smp    
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      1653/mysqld      
tcp6       0      0 :::22                   :::*                    LISTEN      1532/sshd        
tcp6       0      0 ::1:631                 :::*                    LISTEN      3433/cupsd       
udp        0      0 0.0.0.0:52741           0.0.0.0:*                           796/avahi-daemon: r 
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           796/avahi-daemon: r 
udp        0      0 0.0.0.0:31114           0.0.0.0:*                           1105/dhclient    
udp        0      0 0.0.0.0:68              0.0.0.0:*                           1105/dhclient    
udp        0      0 xxx.xxx.xxx.xxx:123        0.0.0.0:*                           2607/ntpd        
udp        0      0 127.0.0.1:123           0.0.0.0:*                           2607/ntpd        
udp        0      0 0.0.0.0:123             0.0.0.0:*                           2607/ntpd        
udp        0      0 0.0.0.0:631             0.0.0.0:*                           1630/cups-browsed 
udp6       0      0 :::5353                 :::*                                796/avahi-daemon: r 
udp6       0      0 :::69                   :::*                                1607/in.tftpd    
udp6       0      0 :::24682                :::*                                1105/dhclient    
udp6       0      0 xxxx::xxxx:xxxx:xxxx:123 :::*                                2607/ntpd        
udp6       0      0 ::1:123                 :::*                                2607/ntpd        
udp6       0      0 :::123                  :::*                                2607/ntpd        
udp6       0      0 :::59559                :::*                                796/avahi-daemon: r 
Active UNIX domain sockets (only servers) 
Proto RefCnt Flags       Type       State         I-Node   PID/Program name    Path 
unix  2      [ ACC ]     STREAM     LISTENING     20483    3253/pulseaudio     /run/user/1003/pulse/native 
unix  2      [ ACC ]     STREAM     LISTENING     18697    3179/gnome-session  @/tmp/.ICE-unix/3179 
unix  2      [ ACC ]     STREAM     LISTENING     15765    2507/X              /tmp/.X11-unix/X0 
unix  2      [ ACC ]     STREAM     LISTENING     20481    3253/pulseaudio     /tmp/.esd-1003/socket 
unix  2      [ ACC ]     STREAM     LISTENING     18698    3179/gnome-session  /tmp/.ICE-unix/3179 
unix  2      [ ACC ]     STREAM     LISTENING     15764    2507/X              @/tmp/.X11-unix/X0 
unix  2      [ ACC ]     STREAM     LISTENING     10538    768/bluetoothd      /var/run/sdp 
unix  2      [ ACC ]     STREAM     LISTENING     21564    3433/cupsd          /var/run/cups/cups.sock 
unix  2      [ ACC ]     STREAM     LISTENING     10820    1653/mysqld         /var/run/mysqld/mysqld.sock 
unix  2      [ ACC ]     STREAM     LISTENING     16666    3184/dbus-daemon    @/tmp/dbus-1gowauBlhV 
unix  2      [ ACC ]     STREAM     LISTENING     14432    748/dbus-daemon     /var/run/dbus/system_bus_socket 
unix  2      [ ACC ]     STREAM     LISTENING     8877     1/init              @/com/ubuntu/upstart 
unix  2      [ ACC ]     STREAM     LISTENING     16698    3136/ibus-daemon    @/tmp/dbus-ue1VKkXx 
unix  2      [ ACC ]     STREAM     LISTENING     12135    3005/gnome-keyring- /run/user/1003/keyring-htUkSg/control 
unix  2      [ ACC ]     STREAM     LISTENING     14469    796/avahi-daemon: r /var/run/avahi-daemon/socket 
unix  2      [ ACC ]     STREAM     LISTENING     10034    3102/dbus-daemon    @/tmp/dbus-SCYaEa0Hje 
unix  2      [ ACC ]     STREAM     LISTENING     18577    3005/gnome-keyring- /run/user/1003/keyring-htUkSg/pkcs11 
unix  2      [ ACC ]     STREAM     LISTENING     18581    3005/gnome-keyring- /run/user/1003/keyring-htUkSg/gpg 
unix  2      [ ACC ]     STREAM     LISTENING     18583    3005/gnome-keyring- /run/user/1003/keyring-htUkSg/ssh 
unix  2      [ ACC ]     STREAM     LISTENING     18569    3007/init           @/com/ubuntu/upstart-session/1003/3007 
unix  2      [ ACC ]     SEQPACKET  LISTENING     11473    396/systemd-udevd   /run/udev/control 
unix  2      [ ACC ]     STREAM     LISTENING     10725    1572/acpid          /var/run/acpid.socket 

请您参考如下方法:

jupyter notebook --ip=0.0.0.0 --port=80 or 
ipython notebook --ip=0.0.0.0 --port=80 
是我在我的流浪箱中运行 ipython 所做的。 (打开 vagrant box 上的端口以在我的主机 mac 上访问它)
usage: ipython [-h] [--certfile NOTEBOOKAPP.CERTFILE] [--ip NOTEBOOKAPP.IP] 
               [--pylab [NOTEBOOKAPP.PYLAB]] 
               [--log-level NOTEBOOKAPP.LOG_LEVEL] 
               [--port-retries NOTEBOOKAPP.PORT_RETRIES] 
               [--notebook-dir NOTEBOOKAPP.NOTEBOOK_DIR] 
               [--config NOTEBOOKAPP.CONFIG_FILE] 
               [--keyfile NOTEBOOKAPP.KEYFILE] [--port NOTEBOOKAPP.PORT] 
               [--transport KERNELMANAGER.TRANSPORT] 
               [--browser NOTEBOOKAPP.BROWSER] [--script] [-y] [--no-browser] 
               [--debug] [--no-mathjax] [--no-script] [--generate-config] 
如果端口已经被占用,看看是什么阻塞了它——在我的情况下,它是一个没有正确终止的旧 ipython 实例。我用这个命令杀死了他们
ps auxww | grep 'ipython' | awk '{print $2}' | xargs sudo kill -9