默认情况下,Docker 容器中的进程以 root 用户身份运行。这意味着在宿主机上运行的 Elasticsearch 进程将以 root 用户权限运行。
然而,为了提高容器的安全性和隔离性,你可以通过指定用户标识符 (User ID) 或用户名 (Username) 来更改容器内进程的执行用户。例如,你可以使用 -u
参数来指定用户标识符。
以下是一个示例命令,将 Elasticsearch 容器内的进程以非 root 用户身份启动:
docker run --rm -u 1000:1000 docker.elastic.co/elasticsearch/elasticsearch:8.14.1
其中,-u 1000:1000
表示将容器内部进程的用户标识符设置为 1000,并且该用户在宿主机上也存在。
请注意,在宿主机上哪个具体的用户名与用户标识符对应取决于宿主机操作系统和配置。
内容由零声教学AI助手提供,问题来源于学员提问