docker run -v はデータボリュームを異常にマウントし、コンテナのステータスは常に再起動になります。

docker run -v はデータボリュームを異常にマウントし、コンテナのステータスは常に再起動になります。

問題点:

docker run に -v パラメータを追加すると、コンテナは常に再起動状態になります。-v パラメータを削除すると、正常に実行されるようになります。

問題を見つける:

docker ログ 'containerId' を使用する

このコンテナIDはdocker run後に返されるコンテナIDです。

ご覧のとおり、これはアクセス拒否の問題です。

問題の解決方法:

docker を実行するときにパラメータを追加します: --privileged=true を追加します

例えば:

docker run -dit -e MYSQL_ROOT_PASSWORD=123456 --name saasdev-mysql --restart always -v /home/data/mysql:/var/lib/mysql --privileged=true -p 3308:3306 mysql:5.6

問題は無事解決され、コンテナは正常に起動しました

少し説明します:

--特権=true

このパラメータを使用すると、コンテナ内のルートに実際のルート権限が与えられます。

それ以外の場合、コンテナ内のルートには外部の通常のユーザーの権限のみがあります。

特権で起動されたコンテナは、ホスト上の多くのデバイスを認識し、マウントすることができます。

Dockerコンテナ内でDockerコンテナを起動することもできます

補足: docker --restart=always パラメータ docker はコンテナを自動的に再起動します

コンテナの作成時にパラメータ --restart=always を追加すると、Docker の再起動時にコンテナが自動的に起動します。

方向:

docker container update --restart=always コンテナ名

操作例は以下の通りです。

[root@localhost mnt]# docker ps -a
コンテナID イメージ コマンド 作成ステータス ポート名
46cdfc60b7a6 nginx "nginx -g 'daemon ..." 約 1 分前 42 秒前に起動 80/tcp n3
79d55a734c26 nginx "nginx -g 'daemon ..." 約 1 分前 42 秒前に起動 80/tcp n2
f7b2206c019d nginx "nginx -g 'daemon ..." 約 1 分前 46 秒前に起動 80/tcp n1
[root@localhost mnt]# docker コンテナの更新 --restart=always n1
1 1 1
[root@localhost mnt]# systemctl dockerを再起動します 
[root@localhost mnt]# docker ps -a
コンテナID イメージ コマンド 作成ステータス ポート名
46cdfc60b7a6 nginx "nginx -g 'daemon ..." 2 分前 終了 (0) 5 秒前 n3
79d55a734c26 nginx "nginx -g 'daemon ..." 2 分前 終了 (0) 5 秒前 n2
f7b2206c019d nginx "nginx -g 'daemon ..." 2 分前 2 秒前に起動 80/tcp n1
 

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • Dockerはローカルディレクトリとデータボリュームコンテナ操作をマウントします
  • Dockerコンテナデータボリュームのマウントの簡単な概要
  • Docker におけるコンテナデータボリュームとデータ管理の詳細な説明
  • Docker データボリュームとデータコンテナの詳細な紹介と例
  • Dockerデータボリューム、データボリュームコンテナの詳細な紹介
  • Dockerコンテナデータボリュームの紹介と操作例

<<:  CSS3のボックスサイズプロパティの興味深いボックスモデルについての簡単な説明

>>:  MySQL 8.0 の新機能 - チェック制約の紹介

推薦する

IDEA を使用して Tomcat を設定し、JSP ファイルを作成する方法

idea を使用して JSP ファイルを書き込む前に、jdk 環境 (ここでは説明しません) と対応...

momentJs を使用してカウントダウン コンポーネントを作成する (サンプル コード)

今日はvueとmomentで作ったカウントダウンを紹介したいと思います。具体的な内容は以下のとおりで...

Dockerを使用してGitlabを素早くデプロイする方法

1. GitLabイメージをダウンロードする docker pull gitlab/gitlab-c...

Docker で SVN サーバーを構築するチュートリアル

SVN は Subversion の略称で、ブランチ管理システムを使用して効率的に管理するオープンソ...

MySQL パラメータ関連の概念とクエリ変更方法

序文:以前の記事では、特定のパラメータの機能についてよく紹介してきました。しかし、MySQL パラメ...

UbuntuはPythonスクリプトのサンプルコードを定期的に実行する

オリジナルリンク: https://vien.tech/article/157序文この記事では、Ub...

webpackでHMRを手動で実装するいくつかの方法

目次1. はじめに2. GitHub 3. 基本構成プロジェクトディレクトリパッケージ.json c...

HTML に画像が存在しない場合にデフォルトの画像を表示する方法の例

画像リンク <img src="" /> jsを使用してURLが有効...

CSSは半透明の境界と複数の境界のシーン分析を実現します

シナリオ 1:半透明の境界線を実現するには: CSS スタイルのデフォルトの動作により、背景色はコン...

Vue3 の動的コンポーネントはどのように機能しますか?

目次1. コンポーネントの登録1.1 グローバル登録1.2 グローバルコンポーネントの登録プロセス1...

Tomcat 実行時の JVM エンコーディングの問題を修正

質問:最近、プロジェクトを展開すると文字化けしたデータが出てきました。確認したところ、プロジェクトは...

IE6はmin-widthを実装している

まず第一に、この効果は古い話題であるはずだということはわかっています。今日ファイルを整理していたら、...

vue.js ルーターのネストされたルートの実例

目次序文Vue CLI での設定基本コードVueルーターの登場ネストされたルートの設定要約する序文V...

MySQL 一時テーブルの簡単な使用法

MySQL 一時テーブルは、一時的なデータを保存する必要がある場合に非常に便利です。一時テーブルは現...

Ubuntu 20.04 Firefox でビデオを再生できない (Flash プラグインがない) 場合の解決策

1. Flashプラグインパッケージのダウンロードアドレス: https://get.adobe.c...