
phelger/phoss-smp-mongodbphoss SMP服务器镜像是一个预配置的Docker镜像,用于快速部署符合PEPPOL(泛欧公共采购在线)和OASIS BDXR(业务文档交换)标准的SMP(服务元数据发布)服务器。该镜像采用MongoDB作为后端存储,提供高效、可扩展的服务元数据管理能力,适用于电子数据交换(EDI)场景中服务元数据的发布、查询和维护。
bashdocker run -d \ --name phoss-smp \ -p 8080:8080 \ -e MONGODB_URI="mongodb://mongo-host:27017/smp" \ -e SERVER_PORT=8080 \ -e LOG_LEVEL=INFO \ phoss/smp-server:latest
-p 8080:8080: 将容器内8080端口映射到主机8080端口(默认HTTP端口)MONGODB_URI: MongoDB连接URI,格式为mongodb://<host>:<port>/<database>SERVER_PORT: 服务器监听端口(容器内端口)LOG_LEVEL: 日志级别,可选值:DEBUG, INFO, WARN, ERRORbashdocker run -d \ --name phoss-smp-ssl \ -p 443:8443 \ -e MONGODB_URI="mongodb://mongo-host:27017/smp" \ -e SERVER_PORT=8443 \ -e ENABLE_SSL=true \ -e SSL_KEYSTORE_PATH="/etc/smp/ssl/keystore.jks" \ -e SSL_KEYSTORE_PASSWORD="changeit" \ -v /host/path/to/ssl:/etc/smp/ssl \ phoss/smp-server:latest
docker-compose.yml示例yamlversion: '3.8' services: smp: image: phoss/smp-server:latest container_name: phoss-smp ports: - "8080:8080" - "8443:8443" environment: - MONGODB_URI=mongodb://mongo:27017/smp - SERVER_PORT=8080 - ENABLE_SSL=true - SSL_KEYSTORE_PATH=/etc/smp/ssl/keystore.jks - SSL_KEYSTORE_PASSWORD=changeit - LOG_LEVEL=INFO volumes: - ./ssl:/etc/smp/ssl - smp-data:/var/lib/smp depends_on: - mongo restart: unless-stopped mongo: image: mongo:5.0 container_name: smp-mongo ports: - "27017:27017" volumes: - mongo-data:/data/db restart: unless-stopped volumes: smp-data: mongo-data:
启动服务:
bashdocker-compose up -d
| 环境变量名 | 描述 | 默认值 | 示例值 |
|---|---|---|---|
MONGODB_URI | MongoDB连接URI | mongodb://localhost:27017/smp | mongodb://user:pass@mongo:27017/smp?authSource=admin |
SERVER_PORT | HTTP服务端口 | 8080 | 8081 |
ENABLE_SSL | 是否启用HTTPS | false | true |
SSL_PORT | HTTPS服务端口 | 8443 | 443 |
SSL_KEYSTORE_PATH | SSL密钥库文件路径 | /etc/smp/ssl/keystore.jks | /ssl/smp-keystore.jks |
SSL_KEYSTORE_PASSWORD | 密钥库密码 | changeit | your-secure-password |
LOG_LEVEL | 日志级别 | INFO | DEBUG |
SMP_DOMAIN | SMP服务器域名 | localhost | smp.example.com |
MAX_UPLOAD_SIZE | 最大元数据上传大小(MB) | 10 | 20 |
建议通过数据卷挂载持久化以下目录:
/var/lib/smp: 服务器运行时数据/etc/smp/conf: 自定义配置文件(如需覆盖默认配置)/etc/smp/ssl: SSL证书和密钥文件部署完成后,可通过以下方式验证服务状态:
http://<host>:8080/smp/health,返回UP表示服务正常http://<host>:8080/smp/admin(默认管理员账号需参考官方文档配置)如需自定义服务器行为,可挂载配置文件到容器内/etc/smp/conf目录,覆盖默认配置。详细配置项请参考phoss SMP官方文档。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务