Linux の Docker コンテナで bash を終了する 2 つの方法

Linux の Docker コンテナで bash を終了する 2 つの方法

bash を終了する場合は、次の 2 つのオプションがあります。

最初のもの:

Ctrl + d を押すとコンテナを終了して停止します。

2番目のタイプ:

Ctrl + p + q を押すと、コンテナを終了してバックグラウンドで実行します。

追加知識: Dockerは複数のサービスを同時に起動します

前回の Docker の記事では、コンテナを起動したときにバックグラウンド サービスは 1 つだけ起動していました。今回は、Supervisor を使って複数のサービスを起動する方法について説明します。

1. まずディレクトリを作成し、そのディレクトリ内にDockerfileを作成します。ファイルの内容は次のとおりです。

Centosから:centos6maintainer fanbin kong "[email protected]" run rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noard.rpmrun pam yes/usepam no/g '/etc/ssh/sshd_config run adminrun echo "admin:admin" | All =(all)All "/etc/ets ssh -keygen -t dsa -f/etc/ets/ssh rsa_keyrun mkdir/var/run/sshdrun/etc/init.d/mysqld start && \ mysql -e "すべての特権を付与 *。 PLETMEIN -E "DATABASES;" RUN MKDIR -P/VAR/LOG/SUPRUPISORCOPY SUPRUPISORD.CONF /TC/SUPERVISORD.CONFEXPOSE 22 3306CMD ["/usr/bin/superpisord"]]

2. Dockerfile が配置されているディレクトリに supervisord.conf ファイルを作成します。内容は次のとおりです。

[supervisord]nodaemon=true[program:sshd]command=/usr/sbin/sshd -D[program:mysqld]command=/usr/bin/mysqld_safe

3. Dockerfile が配置されているディレクトリでビルド コマンドを実行して、イメージ ファイルを生成します。ここでは、イメージ ファイル名として mysql_server を使用します。

sudo docker build -t myserver を実行します。

4. コンテナを起動する

4.1 まず次のコマンドを使用してコンテナを起動します

sudo docker run --name=myserver -d -P myserver

4.2 コンテナを起動したら、「sudo docker ps」で確認することができます。このとき、PORTS列の内容が

「0.0.0.0:49171->22/tcp、0.0.0.0:49172->3306/tcp」

コンテナのポート 22 と 3306 は、ホスト マシンのポート 49171 と 49172 にマップされます。

4.3 これで、次のコマンドでsshおよびmysqlサービスにアクセスできるようになります。

ssh admin@<ホストマシン> -p <ホストマシンのポート>mysql -h <ホストマシン> -u root -pletmein -P 49172

4.4 もちろん、「sudo docker inspect myserver | grep IPAddress」を使用してコンテナのIPアドレスを表示し、次のコマンドでsshおよびmysqlサービスにアクセスすることもできます。

ssh admin@<コンテナマシンのIP> mysql -h <コンテナマシンのIP> -u root -pletmein

Linux の Docker コンテナから bash を終了する上記の 2 つの方法は、すべて編集者が共有した内容です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • docker実行時に異なるポートを占有する2つのポートを起動する問題を解決する
  • Dockerはプロセス操作を管理するためにSupervisorを使用する
  • dockerでsshd操作を有効にする

<<:  ハイパーリンクの表示と開き方

>>:  MySQLデータベースのロック機構の分析

推薦する

Web デザインの経験: 独善的な Web デザイナー

1. ゴミかクラシックか? Web テクノロジーは急速に更新されており、Web サイトのインターフェ...

after疑似要素を使用して中空の三角矢印とXアイコンを実装する例

フロントエンドのデザイン案では、「X」や「>」の形をした閉じるボタンや、他の 3 方向の白抜き...

HTML iframe で親ページと子ページ間の双方向メッセージングを実装する例

ある日、リーダーはメイン ページに iframe を埋め込み、親ページと子ページ間で双方向にメッセー...

MySQL の基本: グループ化関数、集計関数、グループ化クエリの詳細な説明

目次1. 使い方が簡単2. DISTINCTを使用して重複を削除する3. COUNT()の詳細な紹介...

MySQL インジェクションにおける outfile、dumpfile、load_file 関数の詳細な説明

SQL インジェクション脆弱性を悪用する後期段階では、MySQL のファイル シリーズ関数を使用して...

Nginx はリクエスト接続を統合し、ウェブサイトのアクセス例を高速化します

序文世界最高の Web サーバーの 1 つである Nginx の利点は明らかです。 Nginx がリ...

dig/nslookup コマンドを使用して DNS 解決手順を表示する方法

dig - DNS ルックアップ ユーティリティドメイン名のアクセス障害が発生した場合、ドメイン名の...

HTMLフォームのいくつかの送信方法の概要

最も一般的で、最もよく使用され、最も一般的な方法は、submit タイプを使用することです。コードを...

MySQL で MHA アーキテクチャのデプロイメントを構築する手順

目次マハ1. MAHアーキテクチャの概要2. 適用可能なシナリオ3. MHAの動作原理4. MHAの...

CSSフィルターにはどんな魔法の用途があるか

背景基本概念CSS filterプロパティは、ぼかしや色の変化などのグラフィック効果を要素に適用して...

Linuxはsttyを使用して端末の回線設定を表示および変更します。

Sttty は、Linux で端末設定を変更および印刷するための一般的なコマンドです。 1. パラ...

Ckeditor + Ckfinderを使用したJavaScriptファイルアップロードケースの詳細な説明

目次1. 準備2. 減圧3. 統合を開始する1. 準備Ckeditor_4.5.7_full + C...

MySQLでビューを作成する方法

基本的な構文CREATE VIEW ステートメントを使用してビューを作成できます。構文の形式は次のと...

MySQLが大量のデータを処理する際にクエリ速度を最適化するいくつかの方法

実際に参加したプロジェクトでは、MySQL テーブルのデータ量が数百万に達すると、通常の SQL ク...

MySQL binlog を開く手順

Binlog は、MySQL データの変更を記録するために使用されるバイナリ ログ ファイルです。B...