FastDFSはDockerに基づいてインストールされます

とりあえず本番環境でのDockerのパフォーマンスは言うまでもなく、新しいテクノロジーを習得する過程で環境を迅速に構築できるという点だけで、試すことをお勧めします。この記事では、DockerベースのFastDFSサービスをインストールします。

FastDFSのインストールに興味がない場合でも、Dockerのインストールプロセス(基本的に一般)について学ぶことができます。これは、学習効率を向上させるための魔法の武器の1つです。

FastDFSの原理について学習したい場合は、「ファイル管理システムFastDFSの原理の詳細な説明」を参照してください。これは、以下の内容を理解および学習するのに役立ちます。

DockerはFastDFSをインストールします

Dockerのインストールについては、オペレーティングシステムによってインストール方法が異なるため、ここでは繰り返しませんが、デフォルトでは、Dockerはコンピューターまたはサーバーにインストールされ、起動されています。

Dockerライブラリーですでに使用可能なイメージを見てみましょう。次のコマンドを実行します(管理者でない場合は、sudoが必要になる場合があります)。

bogon:~ zzs$ docker search fastdfs
NAME                           DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
season/fastdfs                 FastDFS                                         66
luhuiguo/fastdfs               FastDFS is an open source high performance d…   25                                      [OK]
ygqygq2/fastdfs-nginx          整合了nginx的fastdfs                                20                                      [OK]
morunchang/fastdfs             A FastDFS image                                 19
delron/fastdfs                                                                 12
moocu/fastdfs                  fastdfs5.11                                     9
qbanxiaoli/fastdfs             FastDFS+FastDHT单机版                              8                                       [OK]
……

他のソフトウェアをインストールしている場合は、docker searchコマンドを使用して検索することもできます。

ここでは、delron / fastdfsという名前のミラーが使用されています。もちろん、他のミラーを選択することもできます。構成は異なります。一部のミラーには、Nginx関連の構成がありません。

引き下げましょう。

docker pull delron/fastdfs

トラッカーコンテナーの作成

Dockerイメージを使用してトラッカーコンテナーを構築します。トラッカーコンテナーは、トラッキングサーバーを起動し、スケジューリングで役割を果たすために使用されます。

docker run -d --network=host --name tracker -v /Users/zzs/develop/temp/tracker:/var/fdfs delron/fastdfs tracker

上記の起動コマンドはLinuxで実行されます。MacまたはWindowsオペレーティングシステムnetwork = host(コンテナとホストが同じネットワーク名前空間を利用する)の場合、失敗します。このとき、対応するポートマッピングを指定する必要があります。このチュートリアルのDockerホストはMacです。

docker run -d --name tracker -p 22122:22122 -v /Users/zzs/develop/temp/tracker:/var/fdfs delron/fastdfs tracker

デフォルトのトラッカーはポート22122でリッスンしています。

-vパラメーターは、コンテナー内のローカル・ディレクトリーと/ var / fdfsディレクトリーをマウントします。

ここで、トラッカーサービスが開始されていることがわかります。

docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                                     NAMES
15bfca8b94eb        delron/fastdfs      "/usr/bin/start1.sh …"   4 seconds ago       Up 3 seconds        8080/tcp, 8888/tcp, 23000/tcp, 0.0.0.0:22122->22122/tcp   tracker

ストレージコンテナーを構築する

Dockerイメージを使用してストレージコンテナーを構築し、ストレージサーバーの起動、容量およびバックアップサービスの提供に使用します。

次のコマンドを実行するときに注意が必要な場合は、対応するIPアドレスをトラッカーサービスのIPアドレスに変更する必要があります。操作は同じコンピューター上で行われるため、ここではマシンの内部ネットワークアドレスを使用できます。22122はトラッカーに対応しています港。

たとえば、次のコマンドはIPアドレスを置き換える必要があります。

docker run -d --network=host --name storage -e TRACKER_SERVER=ip:22122 -v /Users/zzs/develop/temp/storage:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage

IPアドレスを置き換えた後、対応するMacでの特定の実行操作:

docker run -d --name storage -p 8888:8888 -p 23000:23000 -e TRACKER_SERVER=192.168.43.143:22122 -v /Users/zzs/develop/temp/storage:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage

その中で、8888はNginxに対応するアクセスポートであり、23000はストレージサービスポートです。

現時点では、Dockerのサービスステータスを表示できます。

docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                                                   NAMES
2bc9f8268eda        delron/fastdfs      "/usr/bin/start1.sh …"   5 seconds ago       Up 4 seconds        8080/tcp, 0.0.0.0:8888->8888/tcp, 22122/tcp, 0.0.0.0:23000->23000/tcp   storage
15bfca8b94eb        delron/fastdfs      "/usr/bin/start1.sh …"   2 minutes ago       Up 2 minutes        8080/tcp, 8888/tcp, 23000/tcp, 0.0.0.0:22122->22122/tcp                 tracker

設定を変更

上記の手順の後、トラッカーとストレージの両方が開始および完了します。対応するDockerコンテナーを入力して、デフォルトの構成を確認できます。

dockerに入るコマンドは:

docker exec -it 2bc9f8268eda bash

パラメータ値「2bc9f8268eda」は、上記で入力したコンテナのCONTAINER IDです。

最初にstorageと入力し、対応する構成ファイルでhttpアクセス構成を確認します。構成ファイルは/ etc / fdfsディレクトリのstorage.confです。最後の行で次の構成を確認できます。

# the port of the web server on this storage server
http.server_port=8888

つまり、このDockerイメージのデフォルトのモニタリングポートはポート8888です。もちろん、この構成を変更する必要があります。別のポートに変更する場合は、対応するNginx構成も変更する必要があります。

では、Nginxはどこに設定されていますか?現在のコンテナにもあります。Nginx構成ファイルのルートディレクトリは次のとおりです。

/usr/local/nginx/conf/

その下のnginx.confを表示および変更できます。最初にデフォルトの設定を見てください:

server {
    listen       8888;
    server_name  localhost;
    location ~/group[0-9]/ {
        ngx_fastdfs_module;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root html;
    }
}

上記はサーバー構成に関するもので、ポートはストレージポートと1対1で対応しています。2つの同期変更を変更する必要がある場合。

上記の操作により、デフォルトでFastDFSはポート8888、23000、および22122を開く必要があることがわかります。Linuxオペレーティングシステムを使用している場合は、ファイアウォールによって対応するポートを開くことに注意してください。

テストを受ける

上記の手順でFastDFSのインストールと構成が完了したら、確認のために写真を入れましょう。

まず、ローカルマウントディレクトリ/ Users / zzs / develop / temp / storage(上記のコマンドで使用されるディレクトリ)に画像を配置します。

次に、ストレージコンテナーを入力し、/ var / fdfsディレクトリを入力して、次のコマンドを実行します。

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf weixin.jpg

このうち、wenxin.jpgは、以前にマシンのストレージディレクトリに保存された画像の名前です。

関連する実行コマンドとディレクトリ:

[root@2bc9f8268eda fdfs]# pwd
/var/fdfs
[root@2bc9f8268eda fdfs]# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf weixin.jpg
group1/M00/00/00/rBEAA18X7ZWAfAPiAABrsFVlX6U142.jpg

この時点でファイルは正常にアップロードされており、ストレージに保存されているファイルのパス情報が返されます。

画像を表示するには、URLからhttp:// ip:8888 / group1 / M00 / 00/00 / rBEAA18X7ZWAfAPiAABrsFVlX6U142.jpgにアクセスしてください。ここで、ipはlocalhostまたは127.0.0.1インターフェイスに置き換えられます。

表示効果は次のとおりです。

画像

次のステップでは、写真をスキャンして、私の公式アカウント[Program New Vision]に注意を払い、ドライグッズのコンテンツを更新し続けることができます。

次回の記事では、Spring Bootを介してFastDFSを統合する方法を紹介します。FastDFSに関する最後の記事でもあります。

元のリンク:「Dockerインストールに基づくFastDFS


手続きの新しいビジョン

パブリック アカウント New Vision of Program」は、ソフトパワーとハードテクノロジーを同時に改善できるプラットフォームです。

WeChat公式アカウント:プログラムの新しいビジョン

おすすめ

転載: blog.csdn.net/wo541075754/article/details/107528318