当copaw执行完copaw app后要让外网访问要做什么

copaw问答 0 1

[root@iZj6chxibf0gwz49f3miidZ ~]# copaw app
/root/.copaw/venv/lib/python3.12/site-packages/websockets/legacy/init.py:6: DeprecationWarning: websockets.legacy is deprecated; see https://websockets.readthedocs.io/en/stable/howto/upgrade.html for upgrade instructions
warnings.warn( # deprecated in 14.0 - 2024-11-09
/root/.copaw/venv/lib/python3.12/site-packages/uvicorn/protocols/websockets/websockets_impl.py:17: DeprecationWarning: websockets.server.WebSocketServerProtocol is deprecated
from websockets.server import WebSocketServerProtocol
WARNING .copaw/venv/lib/python3.12/site-packages/agentscope_runtime/engine/deployers/adapter/a2a/nacos_a2a_registry.py:45 | 2026-03-15 19:45:12 | [NacosRegistry] Nacos SDK (nacos-sdk-python) is not available. Install it with: pip install nacos-sdk-python
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/_app.py:495 | 2026-03-15 19:45:12 | STATIC_DIR: /root/.copaw/venv/lib/python3.12/site-packages/copaw/console
INFO: Started server process [12566]
INFO: Waiting for application startup.
WARNING .copaw/venv/lib/python3.12/site-packages/copaw/agents/memory/memory_manager.py:107 | 2026-03-15 19:45:12 | Vector search disabled. Memory search functionality will be restricted. To enable, configure: EMBEDDING_API_KEY, EMBEDDING_BASE_URL, EMBEDDING_MODEL_NAME.
2026-03-15 19:45:12.838 | INFO | reme.core.service_context:init:95 - update with args: ['config=light'] kwargs: {'embedding_models': {'default': {'model_name': '', 'dimensions': 1024, 'enable_cache': True, 'use_dimensions': False, 'max_cache_size': 2000, 'max_input_length': 8192, 'max_batch_size': 10}}, 'file_stores': {'default': {'backend': 'chroma', 'store_name': 'copaw', 'vector_enabled': False, 'fts_enabled': True}}, 'file_watchers': {'default': {'watch_paths': ['/root/.copaw/MEMORY.md', '/root/.copaw/memory.md', '/root/.copaw/memory']}}, 'enable_logo': False, 'log_to_console': False, 'working_dir': '/root/.copaw'}
2026-03-15 19:45:12.838 | INFO | reme.core.utils.pydantic_config_parser:_find_config_path:138 - load config=/root/.copaw/venv/lib/python3.12/site-packages/reme/config/light.yaml
INFO .copaw/venv/lib/python3.12/site-packages/copaw/agents/utils/token_counting.py:41 | 2026-03-15 19:45:12 | Using local Qwen tokenizer from /root/.copaw/venv/lib/python3.12/site-packages/copaw/tokenizer
PyTorch was not found. Models won't be available and only tokenizers, configuration and file/data utilities can be used.
/root/.copaw/venv/lib/python3.12/site-packages/lark_oapi/ws/pb/google/protobuf/internal/well_known_types.py:91: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC).
_EPOCH_DATETIME_NAIVE = datetime.datetime.utcfromtimestamp(0)
/root/.copaw/venv/lib/python3.12/site-packages/lark_oapi/ws/client.py:67: DeprecationWarning: websockets.InvalidStatusCode is deprecated
def _parse_ws_conn_exception(e: websockets.InvalidStatusCode):
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/channels/console/channel.py:350 | 2026-03-15 19:45:26 | Console channel started
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/channels/matrix/channel.py:426 | 2026-03-15 19:45:26 | Matrix channel not configured or disabled. Skipping start.
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/channels/voice/channel.py:84 | 2026-03-15 19:45:26 | Voice channel disabled, skipping start
INFO .copaw/venv/lib/python3.12/site-packages/copaw/config/watcher.py:58 | 2026-03-15 19:45:26 | ConfigWatcher started (poll=2.0s, path=/root/.copaw/config.json)
INFO: Application startup complete.
INFO: Uvicorn running on http://127.0.0.1:8088 (Press CTRL+C to quit)
^CINFO: Shutting down
INFO: Waiting for application shutdown.
INFO .copaw/venv/lib/python3.12/site-packages/copaw/config/watcher.py:72 | 2026-03-15 19:45:59 | ConfigWatcher stopped
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/channels/voice/channel.py:157 | 2026-03-15 19:45:59 | Voice channel stopped
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/channels/matrix/channel.py:483 | 2026-03-15 19:45:59 | Matrix channel stopped.
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/channels/console/channel.py:355 | 2026-03-15 19:45:59 | console channel stopped
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/channels/mqtt/channel.py:346 | 2026-03-15 19:45:59 | Stopping MQTT channel...
INFO .copaw/venv/lib/python3.12/site-packages/copaw/app/channels/mqtt/channel.py:352 | 2026-03-15 19:45:59 | MQTT channel stopped
INFO: Application shutdown complete.
INFO: Finished server process [12566]

当copaw执行完copaw app后要让外网访问要做什么



🌐 CoPaw 外网访问配置步骤

从日志看到,CoPaw 默认监听 127.0.0.1:8088(仅本地),要外网访问需要做以下配置:


✅ 步骤一:启动时指定监听地址

临时测试(当前会话有效):

copaw app --host 0.0.0.0 --port 8088

永久配置(推荐 systemd 服务):

  1. 创建 systemd 服务文件:

cat > /etc/systemd/system/copaw.service << 'EOF'
[Unit]
Description=CoPaw AI Assistant
After=network.target

[Service]
Type=simple
WorkingDirectory=/root/.copaw
ExecStart=/root/.copaw/venv/bin/copaw app --host 0.0.0.0 --port 8088
Restart=always
RestartSec=10
Environment=PYTHONUNBUFFERED=1

[Install]
WantedBy=multi-user.target
EOF
  1. 启动服务:

sudo systemctl daemon-reload
sudo systemctl enable copaw
sudo systemctl start copaw

✅ 步骤二:阿里云安全组配置

在阿里云控制台操作:

  1. 登录 阿里云 ECS 控制台

  2. 找到你的实例 → 点击 安全组

  3. 点击 配置规则 → 入方向 → 添加规则

字段
端口范围8088/8088
授权对象0.0.0.0/0
协议TCP
优先级1
  1. 点击 保存


✅ 步骤三:验证配置

# 检查监听地址
netstat -tlnp | grep 8088
# 应该显示:0.0.0.0:8088

# 本地访问测试
curl http://127.0.0.1:8088/

# 外网访问测试
curl http://你的服务器IP:8088/

📋 完整命令汇总

# 1. 创建 systemd 服务
sudo bash -c 'cat > /etc/systemd/system/copaw.service << EOF
[Unit]
Description=CoPaw AI Assistant
After=network.target

[Service]
Type=simple
WorkingDirectory=/root/.copaw
ExecStart=/root/.copaw/venv/bin/copaw app --host 0.0.0.0 --port 8088
Restart=always
RestartSec=10
Environment=PYTHONUNBUFFERED=1

[Install]
WantedBy=multi-user.target
EOF'

# 2. 启动服务
sudo systemctl daemon-reload
sudo systemctl enable copaw
sudo systemctl start copaw

# 3. 检查状态
sudo systemctl status copaw

# 4. 查看日志
sudo journalctl -u copaw -f

⚠️ 安全提醒

开放外网访问后建议:

  1. 配置访问控制 - 在 config.json 中设置 allow_from 白名单

  2. 使用 HTTPS - 通过 Nginx 反向代理添加 SSL

  3. 定期更新 - 保持 CoPaw 和系统补丁最新


🔍 快速诊断

如果外网还是访问不了,检查:

# 1. 服务是否在运行
sudo systemctl status copaw

# 2. 监听地址是否正确
netstat -tlnp | grep 8088

# 3. 防火墙是否开放
sudo iptables -L -n | grep 8088

# 4. 阿里云安全组是否配置
# 登录控制台检查

完成以上配置后,就可以通过 http://你的服务器IP:8088/ 访问 CoPaw 了!🎉


也许您对下面的内容还感兴趣: