在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ 數(shù)據(jù)庫(kù)/ Docker
nsqadmin
常見(jiàn)問(wèn)題
安裝
編譯客戶端庫(kù)
特性和擔(dān)保
工具
拓?fù)淠J?/span>
設(shè)計(jì)
Docker
nsqd
內(nèi)幕
性能
TCP 協(xié)議規(guī)范
nsqlookupd
介紹
產(chǎn)品配置
客戶端庫(kù)
快速開(kāi)始

Docker

這篇文章詳細(xì)介紹了如何部署并在 Docker 容器里運(yùn)行 NSQ 二進(jìn)制文件。

這有一個(gè)最小化的 NSQ 鏡像文件,它包含了所有的 NSQ 二級(jí)制文件。每個(gè)二進(jìn)制文件可以通過(guò)命令指定運(yùn)行?;靖袷饺缦拢?/p>

docker run nsqio/nsq /<command>

注意命令前的 /,例如:

docker run nsqio/nsq /nsq_to_file

鏈接

運(yùn)行 nsqlookupd

docker pull nsqio/nsq
docker run --name lookupd -p 4160:4160 -p 4161:4161 nsqio/nsq /nsqlookupd

運(yùn)行 nsqd

首先,得到 docker 主機(jī) ip:

ifconfig | grep addr

接著,運(yùn)行 nsqd 容器:

docker pull nsqio/nsq
docker run --name nsqd -p 4150:4150 -p 4151:4151 \
    nsqio/nsq /nsqd \
    --broadcast-address=<host> \
    --lookupd-tcp-address=<host>:<port>

設(shè)置 --lookupd-tcp-address 標(biāo)志位到主機(jī) IP,以及之前運(yùn)行的 TCP 端口:

nsqlookupd, i.e. dockerIP:4160:

例如,指定主機(jī)IP 172.17.42.1:

docker run --name nsqd -p 4150:4150 -p 4151:4151 \
    nsqio/nsq /nsqd \
    --broadcast-address=172.17.42.1 \
    --lookupd-tcp-address=172.17.42.1:4160

注意:這里使用端口 4160,端口暴露了什么我們什么開(kāi)始運(yùn)行 nsqlookupd 容器 (它也是 nsqlookupd 的端口)。

如果你不想使用默認(rèn)端口,改變 -p 參數(shù):

docker run --name nsqlookupd -p 5160:4160 -p 5161:4161 nsqio/nsq /nsqlookupd

它將會(huì)使得 nsqlookupd 在主機(jī) IP 上的端口 5160 和 5161 可用。

使用 TLS

如果在 NSQ 容器上使用 TLS,你必須包含證書(shū)文件,私鑰文件,和根 CA 文件。Docker 鏡像里 /etc/ssl/certs/ 包含這些內(nèi)容。掛載一個(gè)主機(jī)文件夾包含這些文件,并在命令行里指定,比如:

docker run -p 4150:4150 -p 4151:4151 -p 4152:4152 -v /home/docker/certs:/etc/ssl/certs \
    nsqio/nsq /nsqd \
    --tls-root-ca-file=/etc/ssl/certs/certs.crt \
    --tls-cert=/etc/ssl/certs/cert.pem \
    --tls-key=/etc/ssl/certs/key.pem \
    --tls-required=true \
    --tls-client-auth-policy=require-verify

上面的代碼,運(yùn)行的時(shí)候?qū)?huì)從 /home/docker/certs 里加載文件到 Docker 容器里。

持久化 NSQ 數(shù)據(jù)

使用 /data 目錄來(lái)存儲(chǔ) nsqd 到主機(jī)磁盤(pán)上,它能讓你加載到 data-only Docker container ,或者加載主機(jī)文件夾里:

docker run nsqio/nsq /nsqd \
    --data-path=/data