記事ディレクトリ
序文
この記事では主に、Docker を使用して MySQL をデプロイし、cpolar イントラネット侵入ツールと組み合わせてローカル データベースへのリモート アクセスを実現する方法を紹介します。
Docker は、データベース展開プロセスをより簡素化できる軽量のコンテナ化ソリューションを提供します。MySQL データベースの作成と管理がより簡単かつ迅速になります。具体的な展開プロセスを共有し、注意が必要ないくつかの事項と、イントラネット侵入ツールを使用してパブリック ネットワーク IP なしでローカル データベースにアクセスする方法について説明します。
1.Dockerをインストールする
このチュートリアルの動作環境は Linux Ubuntu システムであり、開始する前に Docker をインストールする必要があります。
ターミナルで次のコマンドを実行します。
Dockerソースを追加する
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Docker パッケージをインストールする
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
イメージを実行して、Docker エンジンのインストールが成功したことを確認します。
sudo docker run hello-world
2. Docker を使用して MySQL イメージをプルします
sudo docker pull mysql:latest
次に、画像表示コマンドを実行します。
sudo docker images
MySQL イメージが正常にプルされたことがわかります。
3. MySQL コンテナを作成して起動する
MySQL イメージの取得に成功したら、そのイメージを使用して MySQL コンテナを作成して実行できます。
ターミナルで次のコマンドを実行します。
sudo docker run -itd -p 3308:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=mydb mysql
このコマンドでは、mysql1 という名前の MySQL コンテナが作成され、バックグラウンドで実行されます。コンテナ内で実行されている MySQL は、ローカル ホストの 3308 ポートにマッピングされます (作成者のホスト ポート 3306 は占有されています)。MySQL root パスワードは次のとおりです。 123456 に設定すると、mydb という名前のデータベースが作成されます。
次に、次のコマンドを実行して、コンテナーが実行されているかどうかを確認します。
sudo docker ps
作成したばかりの MySQL コンテナが実行されていることがわかります。
4. ローカル接続テスト
4.1 MySQL グラフィカル インターフェイス ツールのインストール
MySQL コンテナを docker にローカルにデプロイしたので、ローカルで接続をテストしたい場合は、
MySQL グラフィカル インターフェイス ツールをダウンロードできます: MySQL Workbench
ダウンロード アドレス: MySQL::MySQL Workbench
ここでは Windows システム バージョンを選択しましたが、必要に応じて他のバージョンを選択し、クリックしてダウンロードできます。
4.2 MySQL Workbench の接続テストを使用する
ダウンロードしてインストールした後、プラス記号をクリックし、ポップアップ ウィンドウに接続する MySQL データベースに関する情報を追加します。
ホスト名にはローカルIPアドレス(192.168.184.128)、ポートにはローカルポート(3308)を入力する必要がありますが、実際の運用では自分のホストのIPアドレスとポートを参照する必要があります。次に、root ユーザーとしてログインし、パスワード 123456 を入力して、「OK」をクリックします。
情報を入力したら、右下の接続テストボタンをクリックします。
「MySQL 接続が成功しました」というプロンプト ボックスが表示されたら、接続は成功しています。[OK] をクリックしてプロンプト ボックスを閉じ、情報ボックスの右下にある [OK] ボタンをクリックして、ローカル MySQL データベースに正式に接続します。
ここで生成された接続方法をクリックして、データベース インターフェイスに正常に入力します。
5. パブリック ネットワークからローカル MySQL にリモート アクセスする
ただし、現時点では、docker にデプロイした MySQL データベースにローカルでしか接続できません。別の場所にいて、ローカルにデプロイされた MySQL コンテナにリモートでアクセスしたいが、パブリック IP がない場合はどうすればよいでしょうか?
cpolar イントラネット侵入ツールを使用すると、パブリック ネットワーク IP のない環境でリモート アクセス要件を達成できます。
5.1 イントラネット侵入ツールのインストール
cpolar をインストールする手順は次のとおりです。
cpolar公式サイトアドレス: https: //www.cpolar.com
- ワンクリックスクリプトインストールコマンドを使用する
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- システムにサービスを追加する
sudo systemctl enable cpolar
- cpolarサービスを開始する
sudo systemctl start cpolar
cpolar が正常にインストールされたら、外部ブラウザで Linux の 9200 ポートにアクセスします: [http://サーバーの LAN IP:9200] cpolar アカウントを使用してログインします。ログイン後、cpolar Web 設定インターフェイスが表示されます。結果は Web 上にあります。管理インターフェイスを設定するだけです。
5.2 リモート接続用のパブリックネットワークアドレスを作成する
cpolar Web UI 管理インターフェイスにログインした後、左側のダッシュボードで [トンネル管理] - [トンネルの作成] をクリックします。
- トンネル名: カスタマイズできます。既存のトンネル名と重複しないように注意してください。この例では、mysql を使用します。
- プロトコル:TCP
- 現地住所: 3308
- ポートタイプ: ランダムな一時的な TCP ポート
- 地域: 中国トップを選択
クリック创建
作成が成功したら、左側のオンライン トンネル リストを開きます。トンネルの作成によってパブリック ネットワーク アドレスが生成されたことがわかります。次に、アドレスとポート番号を別のコンピューター (オフサイト) の MySQL Workbench にコピーできます。 )接続することができます。
以下の図に示すように、IP アドレスの場所: 17.tcp.cpolar.top を入力し、ポート番号: 12878 を入力し、リンクをクリックしてテストします。
テスト接続が成功したことがわかります。
パブリック ネットワーク アドレスを使用して、ローカル MySQL データベース インターフェイスへのリモート アクセスが正常に達成されました。
まとめ
デモンストレーションの便宜上、上記の操作プロセスでは cpolar によって生成された TCP パブリック ネットワーク アドレス トンネルを使用しました。そのパブリック ネットワーク アドレスはランダムに生成されました。
このランダム アドレスの利点は、迅速に確立され、すぐに使用できることです。ただし、URL がランダムに生成され、このアドレスは 24 時間以内にランダムに変更されるため、一時的な使用に適しているという欠点があります。
ローカル MySQL への長期的なリモート アクセスが必要だが、パブリック ネットワーク アドレスを毎日再構成したくない、またアドレスをわかりやすく覚えやすいものにしたい場合は、次のオプションを選択することをお勧めします。リモート アクセスに固定 TCP アドレスを使用します。
5.3 固定TCPアドレスを使用したリモートアクセス
次に、固定 TCP アドレスを予約します。 cpolar 公式 Web サイトにログインし、左側の [予約] をクリックし、予約された TCP アドレスを見つけて、リモート サーバー接続用の固定アドレスを予約します。
- 地域:中国 VIPを選択
- 説明: カスタマイズ可能なコメント。この例では、mysql123 が使用されます。
クリック保留
固定 TCP パブリック ネットワーク アドレスが生成されていることがわかります。
アドレスが正常に予約されたら、生成されたパブリック ネットワーク アドレスをコピーし、cpolar Web UI 管理インターフェイスを開き、左側のダッシュボードで [トンネル管理 - トンネル リスト] をクリックし、先ほど作成したランダムなパブリック ネットワーク アドレス トンネルmysqlを見つけて、 をクリックします。编辑
トンネル情報を変更し、先ほど正常に予約された固定 TCP アドレスをトンネルに設定します。
- ポートの種類: 固定 TCP ポートを選択します
- 予約された TCP アドレス: 公式 Web サイトから正常に予約されたアドレスをコピーして貼り付けます。この場合: 5.tcp.vip.cpolar.cn:12675
クリック更新
トンネルが正常に更新されたら、左側のダッシュボードのステータス - [オンライン トンネル リスト] をクリックすると、パブリック ネットワーク アドレスが固定 TCP アドレスに更新されたことがわかります。
次に、前の操作と同様に、この固定 TCP アドレスを使用して、別のコンピューター (オフサイト) 上の MySQL Workbench にアクセスできます。
[接続情報の変更] ボタンをクリックします。
IP アドレスの場所を入力します: 5.tcp.vip.cpolar.cn、ポート番号を入力します: 12675、テストするリンクをクリックすると、テスト接続が成功したことがわかります。
cpolar イントラネット侵入ツールを正常に実装し、固定 TCP パブリック ネットワーク アドレスを使用してローカル MySQL データベース インターフェイスにリモート アクセスしました。