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データベースのロック機構の分析

推薦する

docker を使用して hbase をデプロイする方法

スタンドアロンの hbase について、まずは説明しましょう。 Dockerをインストールするまず ...

MySQL ルートパスワードエラー番号 1045 の解決方法

MySQLサービスを停止するWindowsでは、マイコンピュータを右クリック--管理--サービスと...

Docker に ElasticSearch 6.x をインストールする詳細なチュートリアル

まず、イメージをプルします(またはコンテナを作成するだけで、自然にプルされます)。 docker p...

HTML でマウスが停止したときに行全体の色 (tr) を変更する方法

純粋な CSS を使用して、マウスが行の上を通過するときに行の背景色を変更し、その行にフォーカスがあ...

jsのイベントオブジェクトを深く理解しましょう

JS でよく使用されるイベントは次の通りです。ページイベント: load;フォーカス イベント: フ...

jsで照明スイッチを制御する

参考までに、jsを使用して照明スイッチを制御します。具体的な内容は次のとおりです。トピック: js ...

vue3 学習ノートにおける axios の使用の変更の概要

目次1. axioの基本的な使い方2. クロスドメインの問題を解決するには? 3. パッケージ4. ...

Linux におけるゼロコピー技術の使用に関する簡単な分析

この記事では、Linux におけるいくつかの主要なゼロコピー テクノロジと、ゼロコピー テクノロジを...

フレックスレイアウトとposition:absolute/fixedの競合の詳細な説明

以前、プロジェクトを開発しているときに、flex レイアウトと position:absolute/...

Nginx バージョンのスムーズなアップグレードソリューションの詳細説明

目次背景: Nginx スムーズ アップグレード ソリューションフォールバック手順要約する背景:負荷...

Linuxファイルコマンドの使用

1. コマンドの紹介ファイル コマンドは、ファイルの種類を識別するために使用されます。ファイル チェ...

Mysql 8.0 のインストールとパスワードのリセットの問題

Mysql 8.0 のインストールの問題とパスワードのリセット1: MySqlをダウンロードする公式...

Linux システムで Tomcat を自動的に起動するための設定方法の紹介

1. /etc/init.d ディレクトリに入ります: cd /etc/init.d 2. tomc...

Vue3 ベースのフルスクリーン ドラッグ アップロード コンポーネント

この記事は主に、みんなで共有できるVue3ベースのフルスクリーンドラッグアップロードコンポーネントを...

MySQL 8.0.22 zip圧縮パッケージ版(無料インストール)のダウンロード、インストール、および構成手順の詳細

目次最初のステップはMySQLをダウンロードすることですステップ2: ダウンロードした圧縮パッケージ...