使用docker+虛擬機搭建常用開發(fā)環(huán)境-創(chuàng)新互聯(lián)

使用docker+虛擬機搭建常用開發(fā)環(huán)境 一、部署mysql

拉取鏡像

創(chuàng)新互聯(lián)是一家專業(yè)從事成都做網(wǎng)站、成都網(wǎng)站制作的網(wǎng)絡(luò)公司。作為專業(yè)網(wǎng)站制作公司,創(chuàng)新互聯(lián)依托的技術(shù)實力、以及多年的網(wǎng)站運營經(jīng)驗,為您提供專業(yè)的成都網(wǎng)站建設(shè)、全網(wǎng)整合營銷推廣及網(wǎng)站設(shè)計開發(fā)服務(wù)!
docker pull mysql:5.7

創(chuàng)建mysql的數(shù)據(jù)目錄

mkdir -p /root/docker/mysql/data /root/docker/mysql/logs /root/docker/mysql/conf

在/root/mysql/conf中創(chuàng)建 *.cnf 文件(叫什么都行)

touch my.cnf

啟動mysql

docker run -p 3306:3306 \
--name mysql \
-v /root/docker/mysql/conf:/etc/mysql/conf.d \
-v /root/docker/mysql/logs:/logs \
-v /root/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

參數(shù)說明:

-d: 后臺運行容器
-p 將容器的端口映射到本機的端口
-v 將主機目錄掛載到容器的目錄
-e 設(shè)置參數(shù)

docker 啟動mysql 容器

docker start mysql

二、docker 安裝redis

拉取redis鏡像

docker pull redis

創(chuàng)建掛載目錄

mkdir /root/docker/redis
mkdir -p /root/docker/redis/data

下載官方的配置文件并修改

cd /root/docker/redis/data
wget http://download.redis.io/redis-stable/redis.conf

修改配置文件

bind 127.0.0.1 # 這行要注釋掉,解除本地連接限制
protected-mode no # 默認yes,如果設(shè)置為yes,則只允許在本機的回環(huán)連接,其他機器無法連接。
daemonize no # 默認no 為不守護進程模式,docker部署不需要改為yes,docker run -d本身就是后臺啟動,不然會沖突
requirepass 123456 # 設(shè)置密碼
appendonly yes # 持久化

docker啟動redis

docker run --name redis \
-p 6379:6379 \
-v /root/docker/redis/redis.conf:/etc/redis/redis.conf \
-v /root/docker/redis/data:/data \
-d redis redis-server /etc/redis/redis.conf --appendonly yes

三、部署rocketmq

創(chuàng)建數(shù)據(jù)目錄

mkdir -p /root/docker/rocketmq/nameserver/logs /root/docker/rocketmq/nameserver/store

運行nameserver

docker run -d \
--restart=always \
--name rmqnamesrv \
--privileged=true \
-p 9876:9876  \
-v /root/docker/rocketmq/nameserver/logs:/root/logs \
-v /root/docker/rocketmq/nameserver/store:/root/store \
-e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq sh mqnamesrv

安裝broker

  1. 創(chuàng)建broker.conf配置文件,我的目錄是/root/docker/rocketmq/broker.conf,文件內(nèi)容如下
# 所屬集群名稱,如果節(jié)點較多可以配置多個
brokerClusterName = DefaultCluster
#broker名稱,master和slave使用相同的名稱,表明他們的主從關(guān)系
brokerName = broker-a
#0表示Master,大于0表示不同的slave
brokerId = 0
#表示幾點做消息刪除動作,默認是凌晨4點
deleteWhen = 04
#在磁盤上保留消息的時長,單位是小時
fileReservedTime = 48
#有三個值:SYNC_MASTER,ASYNC_MASTER,SLAVE;同步和異步表示Master和Slave之間同步數(shù)據(jù)的機制;
brokerRole = ASYNC_MASTER
#刷盤策略,取值為:ASYNC_FLUSH,SYNC_FLUSH表示同步刷盤和異步刷盤;SYNC_FLUSH消息寫入磁盤后才返回成功狀態(tài),ASYNC_FLUSH不需要;
flushDiskType = ASYNC_FLUSH
# 設(shè)置broker節(jié)點所在服務(wù)器的ip地址
brokerIP1 = 192.168.3.57
# 磁盤使用達到95%之后,生產(chǎn)者再寫入消息會報錯 CODE: 14 DESC: service not available now, maybe disk full
diskMaxUsedSpaceRatio=95
  1. 啟動broker
docker run -d \
--restart=always \
--name rmqbroker \
--link rmqnamesrv:namesrv \
-p 10911:10911 \
-p 10909:10909 \
--privileged=true \
-v /root/docker/rocketmq/data/broker/logs:/root/logs \
-v /root/docker/rocketmq/data/broker/store:/root/store \
-v /root/docker/rocketmq/conf/broker.conf:/opt/docker/rocketmq/broker.conf \
-e "NAMESRV_ADDR=namesrv:9876" \
-e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq sh mqbroker \
-c /opt/docker/rocketmq/broker.conf

安裝控制臺

拉取鏡像

docker pull pangliang/rocketmq-console-ng

啟動

docker run -d \
--restart=always \
--name rmqadmin \
-e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.3.57:9876 \
-Dcom.rocketmq.sendMessageWithVIPChannel=false" \
-p 9999:8080 \
pangliang/rocketmq-console-ng

網(wǎng)頁訪問http://192.168.3.57:9999/查看控制臺信息

未完待續(xù)……

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)站名稱:使用docker+虛擬機搭建常用開發(fā)環(huán)境-創(chuàng)新互聯(lián)
URL地址:http://bm7419.com/article14/igege.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、用戶體驗、商城網(wǎng)站全網(wǎng)營銷推廣、Google、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)