小编Fai*_*zan的帖子

Dockerfile 入口点无法切换用户

我无法从入口点脚本将用户切换到非 root 用户。在 Dockerfile 中更改用户的 User 指令有效,但我无法使用 chmod 更改权限。为了解决这个问题,我创建了entrypoint.sh脚本来更改文件夹权限,但是当我尝试使用su命令切换用户时,它显然不起作用,容器仍然以 root 身份运行。

Dockerfile

FROM php:7.2-fpm

# Installing dependencies
RUN apt-get update && apt-get install -y \
    build-essential \
    mysql-client \
    libpng-dev \
    libjpeg62-turbo-dev \
    libfreetype6-dev \
    locales \
    zip \
    jpegoptim optipng pngquant gifsicle \
    vim \
    unzip \
    git \
    curl

# Installing composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

ENV USER_ID=1000
ENV GROUP_ID=1000
ENV USER_NAME=www
ENV GROUP_NAME=www

RUN groupadd -g $GROUP_ID $GROUP_NAME …
Run Code Online (Sandbox Code Playgroud)

switch-user docker dockerfile docker-compose docker-entrypoint

8
推荐指数
1
解决办法
2万
查看次数