wso2 api-m 运行 i docker 作为非root用户
wso2 api-m running i docker as non root user
我正在研究 运行在 openshift 中使用 wso2-am。
我正在尝试 运行 AM 但它一直失败,因为缺少写入文件系统的权限。
Unable to create the directory
[/opt/wso2/wso2am-2.1.0/repository/deployment/server/webapps/am#sample#calculator#v1]
Unable to create the directory
[/opt/wso2/wso2am-2.1.0/repository/deployment/server/webapps/authenticationendpoint]
我看到容器的所有示例都是 运行ning 作为 root 但我们想避免这种情况并且 运行 它作为 USER 1010。
能不能设置一个值让它写入指定位置
运行 作为 uid 为 1010 的用户也无济于事。您需要设置文件系统权限,使您需要写入的目录和文件具有组root
,并且可以按组写入。
这是必要的,因为默认情况下,在 OpenShift 下,您的应用程序将 运行 作为分配给您的项目的唯一 uid。这超出了 /etc/passwd
文件中的范围,您无法提前预测它会是什么。因为它不在 /etc/passwd
中,所以它会退回到 运行ning 作为组 root
,因此为什么你需要满足文件系统权限的要求是组 root
和可按组写入。
我正在研究 运行在 openshift 中使用 wso2-am。 我正在尝试 运行 AM 但它一直失败,因为缺少写入文件系统的权限。
Unable to create the directory [/opt/wso2/wso2am-2.1.0/repository/deployment/server/webapps/am#sample#calculator#v1]
Unable to create the directory [/opt/wso2/wso2am-2.1.0/repository/deployment/server/webapps/authenticationendpoint]
我看到容器的所有示例都是 运行ning 作为 root 但我们想避免这种情况并且 运行 它作为 USER 1010。 能不能设置一个值让它写入指定位置
运行 作为 uid 为 1010 的用户也无济于事。您需要设置文件系统权限,使您需要写入的目录和文件具有组root
,并且可以按组写入。
这是必要的,因为默认情况下,在 OpenShift 下,您的应用程序将 运行 作为分配给您的项目的唯一 uid。这超出了 /etc/passwd
文件中的范围,您无法提前预测它会是什么。因为它不在 /etc/passwd
中,所以它会退回到 运行ning 作为组 root
,因此为什么你需要满足文件系统权限的要求是组 root
和可按组写入。