Jenkins集成:docker-compose 权限问题
一、问题:使用docker-compose up -d 启动服务器时,生成到文件是以root身份创建,不安全。
二、原因:docker-compose 默认以root用户启容器
三、 解决方案:使用非root用户
- dockerfile文件中创建创建非root用户,在CMD之前,切换到此用户
FROM xxx
# create non-privileged user and group
RUN groupadd -r mahuaping -g 1001 && useradd mahuaping -u 1001 -g mahuaping
...
USER 1001:1001
CMD ["start"]
- docker-compose.yml 中使用非root用户
添加user,uid & gid: 1001;
增加volumes卷"log:/var/workspacedo/log":指定device: ./log