其他分享
首页 > 其他分享> > 在容器中挂载$HOME

在容器中挂载$HOME

作者:互联网

需要entrypoint.sh和启动命令行配合完成:

  1. 在entrypoint.sh中动态增加所需的UID和GID:
    groupadd --force --gid $APP_GID $APP_USER
    useradd -c 'container user' -u $APP_UID -g $APP_GID $APP_USER -M
    #chown -R $APP_UID:$APP_GID /home/$APP_USER 如增加此行会导致权限问题登入容器后无法查看$HOME
    注意:-M指示不需要在容器内为该用户生成$HOME目录
  2. 通过环境变量将host的UID和GID传递给镜像以启动容器:
    docker run -itd \
    --workdir="/home/$USER" \
    --volume="/home/$USER:/home/$USER" \
    -e "APP_USER=$USER" \
    -e "APP_UID=$(id -u $USER)" \
    -e "APP_GID=$(id -g $USER)" \
    --privileged=true \
    $IMAGE_NAME

标签:容器,UID,--,APP,GID,USER,挂载,home,HOME
来源: https://www.cnblogs.com/CodeComposer/p/16474675.html