Doccano가 포트 80에서 서비스하도록 요청할 때 "('0.0.0.0', 80)에 연결할 수 없습니다.": 문제가 무엇입니까?

Doccano가 포트 80에서 서비스하도록 요청할 때 "('0.0.0.0', 80)에 연결할 수 없습니다.": 문제가 무엇입니까?

나는 사용한다도카노우분투 22.04에서.

Doccano에게 포트 80을 제공하도록 요청하면 오류가 발생합니다 "Can't connect to ('0.0.0.0', 80)": 무엇이 문제입니까?

Doccano에게 포트 8000을 제공하도록 요청하면 잘 작동합니다.

전체 오류 메시지:

(doccanopy310) ubuntu@ip-172-30-33-321:~$ doccano webserver --port 80
[2023-08-12 00:16:09 +0000] [36905] [INFO] [django_drf_filepond.apps::ready::61] App init: no django-storages backend configured, using default (local) storage backend if set, otherwise you need to manage file storage independently of this app.
Starting server with port 80.
[2023-08-12 00:16:09 +0000] [36905] [INFO] Starting gunicorn 20.1.0
[2023-08-12 00:16:09 +0000] [36905] [ERROR] Retrying in 1 second.
[2023-08-12 00:16:10 +0000] [36905] [ERROR] Retrying in 1 second.
[2023-08-12 00:16:11 +0000] [36905] [ERROR] Retrying in 1 second.
[2023-08-12 00:16:12 +0000] [36905] [ERROR] Retrying in 1 second.
[2023-08-12 00:16:13 +0000] [36905] [ERROR] Retrying in 1 second.
[2023-08-12 00:16:14 +0000] [36905] [ERROR] Can't connect to ('0.0.0.0', 80)
(doccanopy310) ubuntu@ip-172-30-33-321:~$

재현하려면: AWS EC2 인스턴스를 시작하고 다음 명령을 실행합니다.

Doccano를 설치했습니다.

# Install conda
wget https://repo.anaconda.com/archive/Anaconda3-2023.03-1-Linux-x86_64.sh 
bash Anaconda3-2023.03-1-Linux-x86_64.sh -b
if ! [[ $PATH =~ "$HOME/anaconda3/bin" ]]; then
  PATH="$HOME/anaconda3/bin:$PATH"
fi
conda init bash
source ~/.bashrc 

# create conda env and install doccano
conda create -n doccanopy310 python=3.10 anaconda
conda activate doccanopy310
pip install doccano

Doccano를 시작하기 위해 나는공식 문서). 난 달린다:

# Initialize database. First time only.
doccano init
# Create a super user. First time only.
doccano createuser --username admin --password pass
# Start a web server.
doccano webserver --port 80

다른 터미널에서 실행하십시오.

# Start the task queue to handle file upload/download.
doccano task

Doccano에게 포트 8000을 제공하도록 요청하면 잘 작동합니다.

(doccanopy310) ubuntu@ip-172-30-33-321:~$ doccano webserver --port 8000
[2023-08-12 00:21:53 +0000] [37206] [INFO] [django_drf_filepond.apps::ready::61] App init: no django-storages backend configured, using default (local) storage backend if set, otherwise you need to manage file storage independently of this app.
Starting server with port 8000.
[2023-08-12 00:21:53 +0000] [37206] [INFO] Starting gunicorn 20.1.0
[2023-08-12 00:21:53 +0000] [37206] [INFO] Listening at: http://0.0.0.0:8000 (37206)
[2023-08-12 00:21:53 +0000] [37206] [INFO] Using worker: sync
[2023-08-12 00:21:53 +0000] [37207] [INFO] Booting worker with pid: 37207
[2023-08-12 00:21:53 +0000] [37208] [INFO] Booting worker with pid: 37208
[2023-08-12 00:21:53 +0000] [37209] [INFO] Booting worker with pid: 37209
[2023-08-12 00:21:54 +0000] [37210] [INFO] Booting worker with pid: 37210
[2023-08-12 00:21:54 +0000] [37211] [INFO] Booting worker with pid: 37211

보지 못했어요포트 80을 사용하는 모든 프로그램:

debug to see which ports are being used: From within the machine netstat -ntlp / netstat -nulp will show all open TCP / UDP ports (and associated programs) respectively.
(doccanopy310) ubuntu@ip-172-30-33-321:~$ netstat -nulp
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
udp        0      0 127.0.0.53:53           0.0.0.0:*                           -
udp        0      0 172.30.33.321:68        0.0.0.0:*                           -
udp        0      0 127.0.0.1:323           0.0.0.0:*                           -
udp6       0      0 ::1:323                 :::*                                -

(doccanopy310) ubuntu@ip-172-30-33-321:~$ netstat -ntlp
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
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:22              0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:8000            0.0.0.0:*               LISTEN      37206/python
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      -
tcp6       0      0 :::22                   :::*                    LISTEN      -
(doccanopy310) ubuntu@ip-172-30-33-321:~$

환경:

  • 우분투 22.04.2 LTS(GNU/Linux 5.15.0-1039-aws x86_64)).

답변1

일반 사용자로 실행하고 있습니다. 루트만 프로세스를 열고 1024보다 낮은 포트에서 수신 대기할 수 있습니다. 루트로 실행하거나 포트 1025 이상을 사용한 다음 Apache 또는 Nginx를 사용하여 포트 80으로 리디렉션해야 하지만 이를 위해서는 루트가 구성 파일을 생성/편집하고 데몬을 다시 시작해야 합니다.

관련 정보