[解決済み] dockerコンテナ内でsudoを使用するには?
2022-03-26 16:24:04
質問
通常、docker コンテナはユーザー ルート . 別のユーザーを使いたいのですが、これはdockerのUSERディレクティブを使えば問題ないです。しかし、このユーザは sudo コンテナ内で このコマンドは欠落しています。
このための簡単なDockerfileを紹介します。
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
このコンテナを実行すると、ユーザー「docker」でログインされます。sudoを使おうとすると、コマンドが見つからない。そこで スードー を使用してDockerfile内にパッケージを作成します。
RUN apt-get install sudo
この結果 sudo パッケージを見つけることができません。
解決方法を教えてください。
今、手に入れました。reganが指摘したように、ユーザーをsudoersグループに追加する必要がありました。しかし、主な原因は、リポジトリのキャッシュを更新するのを忘れていたため、apt-get が sudo パッケージを見つけることができなかったことです。今は動いています。これが完成したコードです。
FROM ubuntu:12.04
RUN apt-get update && \
apt-get -y install sudo
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
USER docker
CMD /bin/bash
関連
-
[解決済み] Dockerfileで-hオプションのように特定のホスト名を扱う方法
-
企業向けWeChatアラート監視のためのPrometheus+Grafana+AlertmanagerのDockerインストール
-
[解決済み] Dockerコンテナの中から、マシンのローカルホストに接続するにはどうすればよいですか?
-
[解決済み] Docker Dockerコンテナからホストへのファイルコピー
-
[解決済み] ホストからDockerコンテナにファイルをコピーする方法は?
-
[解決済み] リポジトリを使用せずに、あるホストから別のホストにDockerイメージをコピーする方法
-
[解決済み] ホストからDockerコンテナのIPアドレスを取得する方法
-
[解決済み] sudoを使わずにnpmがエラーを投げるのを修正する方法
-
[解決済み】Dockerは仮想マシンとどう違うの?
-
[解決済み】vimの「sudoで書く」トリックはどうやるの?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] dockerでCOPYするが、除外する
-
[解決済み] docker ps' と 'docker-compose ps' コマンドで異なる結果が表示される
-
[解決済み] Dockerfileで-hオプションのように特定のホスト名を扱う方法
-
[解決済み] docker terminal: IP待ち
-
[解決済み] docker-proxy - 443 でバインドしようとすると、ユーザーランドプロキシーを開始する際にエラーが発生します。
-
docker共通コマンドのまとめ
-
エラー:入力デバイスはTTYではありません。
-
minttyを使用している場合は、コマンドの前に'winpty'を付けてみてください。
-
rancher のデプロイメントに最小限の可用性の問題はありません。
-
docker base container in bash: sudo: command not found 問題が解決されました。