fix Deployment
This commit is contained in:
@@ -57,8 +57,10 @@ COPY --from=builder /app/tyapi-server .
|
||||
COPY --chown=tyapi:tyapi config.yaml .
|
||||
COPY --chown=tyapi:tyapi configs/ ./configs/
|
||||
|
||||
# 创建日志目录
|
||||
RUN mkdir -p logs && chown -R tyapi:tyapi logs
|
||||
# 创建日志目录并设置权限
|
||||
RUN mkdir -p logs && \
|
||||
chown -R tyapi:tyapi logs && \
|
||||
chmod 755 logs
|
||||
|
||||
# 切换到非root用户
|
||||
USER tyapi
|
||||
|
||||
@@ -41,7 +41,7 @@ logger:
|
||||
level: warn
|
||||
format: json
|
||||
output: "file"
|
||||
log_dir: "/app/logs"
|
||||
log_dir: "logs" # 使用相对路径,与Dockerfile中的目录一致
|
||||
max_size: 100
|
||||
max_backups: 5
|
||||
max_age: 30
|
||||
|
||||
@@ -122,8 +122,8 @@ services:
|
||||
ports:
|
||||
- "25000:8080"
|
||||
volumes:
|
||||
- ./logs:/app/logs
|
||||
user: "1001:1001" # 使用tyapi用户运行容器 (UID 1001)
|
||||
- app_logs:/app/logs
|
||||
user: "1001:1001" # 使用非root用户运行容器
|
||||
networks:
|
||||
- tyapi-network
|
||||
depends_on:
|
||||
@@ -164,6 +164,8 @@ volumes:
|
||||
driver: local
|
||||
redis_data:
|
||||
driver: local
|
||||
app_logs:
|
||||
driver: local
|
||||
|
||||
networks:
|
||||
tyapi-network:
|
||||
|
||||
43
scripts/debug-permissions.sh
Normal file
43
scripts/debug-permissions.sh
Normal file
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 调试权限问题脚本
|
||||
|
||||
echo "🔍 调试容器权限问题..."
|
||||
echo ""
|
||||
|
||||
# 检查容器是否运行
|
||||
echo "1. 检查容器状态:"
|
||||
docker ps | grep tyapi-app-prod
|
||||
echo ""
|
||||
|
||||
# 检查容器内用户信息
|
||||
echo "2. 检查容器内用户信息:"
|
||||
docker exec tyapi-app-prod id
|
||||
echo ""
|
||||
|
||||
# 检查容器内日志目录权限
|
||||
echo "3. 检查容器内日志目录权限:"
|
||||
docker exec tyapi-app-prod ls -la /app/
|
||||
echo ""
|
||||
|
||||
# 检查容器内logs目录权限
|
||||
echo "4. 检查容器内logs目录权限:"
|
||||
docker exec tyapi-app-prod ls -la /app/logs/
|
||||
echo ""
|
||||
|
||||
# 检查宿主机logs目录权限
|
||||
echo "5. 检查宿主机logs目录权限:"
|
||||
ls -la logs/
|
||||
echo ""
|
||||
|
||||
# 尝试在容器内创建测试文件
|
||||
echo "6. 测试容器内文件创建权限:"
|
||||
docker exec tyapi-app-prod sh -c "cd /app/logs && touch test.log && echo '测试成功' > test.log && cat test.log && rm test.log"
|
||||
echo ""
|
||||
|
||||
# 检查容器内进程
|
||||
echo "7. 检查容器内进程:"
|
||||
docker exec tyapi-app-prod ps aux
|
||||
echo ""
|
||||
|
||||
echo "✅ 调试完成!"
|
||||
Reference in New Issue
Block a user