Thông thường, các container docker được chạy bằng root người dùng . Tôi muốn sử dụng một người dùng khác, không có vấn đề gì khi sử dụng chỉ thị USER của docker. Nhưng người dùng này sẽ có thể sử dụng sudo bên trong container. Lệnh này bị thiếu.
Đây là một Dockerfile đơn giản cho mục đích này:
FROM ubuntu:12.04
RUN useradd docker && echo "docker:docker" | chpasswd
RUN mkdir -p /home/docker && chown -R docker:docker /home/docker
USER docker
CMD /bin/bash
Chạy container này, tôi đăng nhập bằng 'docker' của người dùng. Khi tôi cố gắng sử dụng sudo, lệnh không được tìm thấy. Vì vậy, tôi đã cố gắng cài đặt gói sudo bên trong Dockerfile của mình bằng cách sử dụng
RUN apt-get install sudo
Điều này dẫn đến việc không thể định vị gói sudo