Dockerイメージが消える問題を解決する

Dockerイメージが消える問題を解決する

1. 50と93では鏡像が消える

[root@h50 /]# df -h
ファイルシステムの使用済み容量 使用可能 使用済み% マウントポイント devtmpfs 24G 0 24G 0% /dev
tmpfs 24G 0 24G 0% /dev/shm
tmpfs 24G 428M 24G 2% /実行
tmpfs 24G 0 24G 0% /sys/fs/cgroup
/dev/mapper/cl-root 50G 43G 8.0G 85% /

ルート残り85%

オーバーレイ 50G 43G 8.0G

85% /var/lib/docker/overlay2/9e1d9bbd368c8ebafde39dcaaa66afecde95bfab7db51b13fe92aa5c7995cc9e/マージ済み

画像はルートの下のスペースを使用します

/var/lib/kubelet/config.yaml を編集します。
立ち退きハード:
 イメージファイル利用可能: 15%
 メモリ使用可能: 100Mi
 ノードfs.available: 10%
 nodefs.inodes空き容量: 5%

imagesfsが15%未満の場合、削除されます

これはこれと関連しているはずです

ルート用のハードディスク容量を増やし、ホームからルートまでの容量を分割する

93に7つのtスペースを追加

lvのルートにスペースを追加する

resize2fs /dev/mapper/centos-root エラーが発生しました xfs_growfs /dev/mapper/centos-root

データのバックアップ

scp -r /home/ [email protected]:/root/home50/*

アンマウント

アンマウント -l /home
lvextend -L +80g /dev/centos/root

追加後、xfsを更新する必要があります

xfs_growfs /dev/mapper/centos-root

マウントできません。修理が必要です

xfs_repair /dev/cl/home

数Tのため、修理時間が長すぎる

lvホームを削除

lvremove /dev/centos/home

1.8t lvの家を作る

lvcreate -n ホーム -L 1.9T /dev/centos

xfsシステムとしてフォーマット

mkfs.xfs /dev/centos/home

マウント

/dev/mapper/centos-home /home をマウントします。

データを復元する

家の大きさを増やす

lvextend -L +1.8t /dev/centos/home
xfs_growfs /dev/mapper/cl-home

この時点で、ホームサイズを復元します

データを復元する

scp -r [email protected]:/root/home52/* /home/

2. 減らす

xfs は縮小をサポートしていないため、lvreduce は使用できません。ただし、resize2fs は使用できず、次のエラーが報告されます: 有効なファイルシステム スーパーブロックが見つかりません。つまり、縮小された論理パーティションは、mkfs.xfs コマンドを使用して再フォーマットする必要があります。この論理パーティションに重要なファイルがある場合は、大惨事になります。

ホーム下のファイルのみをバックアップできます。

注: 起動時にマウント

/etc/fstab をスキャンする

60以上

lvreduce -L 5t /dev/centos/home
lvextend -L +1.8t /dev/centos/root
xfs_growfs /dev/mapper/centos-home

補足:Docker 再起動イメージが消えた_Docker の一般的なイメージと使い方

Docker は現在最も人気のあるテクノロジーであり、開発者にとってますます必要なスキルになっています。一般的によく使われる redis、mq、tomcat、zookeeper、mysql、nginx イメージなど、必要なアプリケーション環境を素早く簡単に構築できます。ここでは、これらの知識ポイントを 1 つの記事にまとめることができるように、使用方法をまとめます。

1. イメージをプルする

現在、私はダウンロード速度が非常に速い国内のNetEaseミラーをよく使用しています。

# docker pull rabbitmq:3-management --このバージョンではバックグラウンド表示があり、監視ページを見ることができます

2. 画像を表示する

プルダウンした後、画像を確認し、画像 ID を取得します。

# docker images ----- プルしたイメージを表示する

3. 画像を開始する

イメージの起動は重要なステップです。異なるイメージの起動コマンドは、主にポート マッピングが多少異なります。次のイメージはテスト済みで、正常に起動できます。

# docker run -d --name "xdclass_nginx" -p 8088:80 nginx --nginx を起動します
# docker run -d --name "xdclass_rabbitmq" -p 5672:5672 -p 15672:15672 db695e07d0d
--mq を実行します。-d はバックグラウンドで実行します。-p はポート マッピングを指定します。# docker run -d --name xdclass_redis -p 6379:6379 d4f259423416 --redis コンテナーを起動しますが、実際には redis は起動されていません。# docker exec -it ce388f800aed redis-cli ---docker で redis にアクセスして起動します。その後にコンテナー番号が続きます。
# docker run -d --name myzookeeper -p 2181:2181 --restart always 5e8e3d7b06f9 --zookeeper イメージを起動します。# docker run -p 3306:3306 --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=rootroot -d 9e64176cd8a2. ----docker は mysql を起動します。MYSQL_ROOT_PASSWORD の後のパスワードは、起動時に設定されたデフォルトの root パスワードです。

4. コンテナが起動しているかどうかを確認する

# docker ps -a --- 起動済みのコンテナと起動していないコンテナを含むすべてのコンテナを表示します。 # docker ps. ----- 起動済みのコンテナを表示します。

5.Mysqlのその後の操作

Mysql コンテナの起動後、Navicat などのクライアント経由で接続する場合は、リモート ログイン権限も有効にする必要があります。手順は次のとおりです。

最初のステップは、上記の mysql コンテナを起動した後、コンテナに入ることです。

# docker exec -it c8486ec93afb バッシュ

ステップ2: MySQLにログインします。

#mysql -u root -p --- 前回の docker 実行のパスワード rootroot を入力するよう求められます。

ステップ 3: MySQL にリモート アクセス権限を追加します。

mysql> grant オプションを使用して、'rootroot' で識別される root@'%' に *.* のすべての権限を付与します。
mysql> 権限をフラッシュします。

注: 新しく設定されたリモート アクセス ユーザー名: root、パスワード: rootroot;

6. コンテナの停止と再起動のコマンド

# docker stop 283138f62bc2 --- コンテナを停止します。コンテナ番号: 283138f62bc2
# docker start 283138f62bc2 --作成されたコンテナ番号283138f62bc2を起動します
#docker stop $(docker ps -a -q) -- すべてのコンテナを停止します

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

以下もご興味があるかもしれません:
  • kubernetes1.20 で docker (shim) を containerd に置き換える問題について説明します。
  • Dockerコンテナを終了した後も実行を継続する方法
  • Dockerは異常なコンテナ操作を排除する
  • さようなら Docker: 5 分で Containerd に移行する方法
  • Dockerはコンテナにポートを動的に公開します
  • Dockerイメージ内のnoneイメージ操作を削除する
  • Dockerイメージのローカル移行の実装
  • Docker イメージを削除できません エラー: そのようなイメージはありません: xxxxxx 解決策
  • Dockerでイメージを削除する方法
  • Docker でのコンテナとイメージの命名

<<:  WebページのレイアウトではIE6の互換性の問題を考慮する必要があります

>>:  スクラッチ宝くじの例を実現する JavaScript キャンバス

推薦する

Vue はウェブページの言語切り替えの国際化を実装します

1. 基本的な手順1: yarn add vue-i18nをインストールするこのパスに新しい .js...

node.js チュートリアルの Util モジュールの例の詳細な説明

目次タイプ判定から始める厳格な平等エラーファーストと約束デバッグと出力タイプ判定から始めるJavaS...

MySQLバイナリログを介してデータベースデータを復元する方法の詳細な説明

ウェブサイト管理者は、さまざまな理由や操作により、ウェブサイトのデータを誤って削除したり、ウェブサイ...

MySQL エラー: ロックを取得しようとしたときにデッドロックが見つかりました。トランザクションの解決策を再起動してください

問題を見つける最近、以前のデータを入力していたときに、プログラムが突然次のエラーを報告しました。 [...

MySQL (5.6 以下) の JSON 解析の詳細な例

MySQL(5.6以下)はjsonを解析します #json 解析関数 DELIMITER $$ `j...

Windows 10 Home Edition に Docker をインストールする方法

最近、プロジェクトをアップグレードするために Docker を使用しました。これまで使用したことがな...

Linux での SELinux を理解する方法

目次1. SELinux の紹介2. SELinuxの基本概念2.1 仕事の種類2.2. セキュリテ...

nginx ウェブサイト サービスのアンチホットリンクを設定する方法 (推奨)

1. ホットリンクの原則1.1 Webページの準備Web ソース ホスト (192.168.153...

ActiveMQ メッセージ サービスを構築するための Docker 学習方法の手順

序文ActiveMQ は、Apache が開発した最も人気があり強力なオープン ソース メッセージ ...

MySQL マスターライブラリ binlog (master-log) とスレーブライブラリ relay-log 間のコードの詳細な説明

メインライブラリのバイナリログ: # 2420 で #170809 17:16:20 サーバー ID...

VueはTodoListの例をカプセル化し、ブラウザのローカルキャッシュのアプリケーションを実装します。

この記事では主に、Vue で TodoList をカプセル化するケースと、ブラウザのローカル キャッ...

Ubuntu 18.04 に Anaconda3 をインストールするための詳細なチュートリアル

Anaconda は、conda、Python、およびそれらの依存関係など、180 を超える科学パッ...

自己終了XHTMLタグを書くときに注意すべきこと

XHTMLの img タグは、次のように記述する必要があります: <img alt="...

Linux で at および cron スケジュールタスクをカスタマイズする方法

Linux システムには 2 種類のスケジュールされたタスクがあります。1 つは 1 回だけ実行され...

Vue.js ディレクティブのカスタム命令の詳細な説明

デモコマンドをカスタマイズするVue カスタム ディレクティブの構文は次のとおりです。 Vue.di...