docker之(二)安裝容器

一、安裝MySQL

#1、下載mysql 5.7鏡像
 docker pull mysql:5.7

#2、查看docker鏡像
docker images

#3蛮艰、創(chuàng)建實(shí)例并啟動(dòng)
docker run -p 3306:3306 --name mysql \
-v /data/mysql/log:/var/log/mysql \
-v /data/mysql/data:/var/lib/mysql \
-v /data/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7

#參數(shù)說明:
docker run :docker 啟動(dòng)一個(gè)容器
-p 3306:3306 : 將容器 3306 端口映射到主機(jī)到3306端口
--name mysql :為當(dāng)前容器命名為 mysql
\ : 換行標(biāo)志
`:` : 與容器內(nèi)部的文件夾進(jìn)行 掛載
-v /data/mysql/log:/var/log/mysql : 將日志文件夾掛載到主機(jī)
-v /data/mysql/data:/var/lib/mysql : 將mysql運(yùn)行期間的數(shù)據(jù)文件掛載到主機(jī)
-v /data/mysql/conf:/etc/mysql : 將配置文件夾掛載到主機(jī)
-e MYSQL_ROOT_PASSWORD=123456 :初始化 root   用戶密碼

#4、創(chuàng)建mysql配置文件
vi /data/mysql/conf/my.cnf

#寫入配置信息
[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
default-time-zone='+08:00'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

#5雀彼、重啟mysql容器
docker restart mysql

#6壤蚜、設(shè)置容器在docker啟動(dòng)的時(shí)候啟動(dòng)
docker update mysql --restart=always

二、安裝redis

#1徊哑、下載鏡像(最新)
docker pull redis

#2袜刷、創(chuàng)建目錄 / 配置文件
mkdir -p /data/redis/conf
#創(chuàng)建配置文件
touch /data/redis/conf/redis.conf

#3、安裝redis / 掛載配置文件
docker run -p 6379:6379 --name redis \
-v /data/redis/data:/data \
-v /data/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

#4莺丑、連接redis容器
docker exec -it redis redis-cli
# 測(cè)試
127.0.0.1:6379> set h hello
OK
127.0.0.1:6379> get h
"hello"
127.0.0.1:6379> exit

#5著蟹、重啟redis
docker restart redis

#6、修改redis配置文件(設(shè)置持久化)
cd /data/redis/conf
vi redis.conf
#拷貝
appendonly yes

#7梢莽、設(shè)置容器在docker啟動(dòng)的時(shí)候啟動(dòng)
docker update redis --restart=always

三萧豆、安裝nginx

#1、下載nginx鏡像(最新)
docker pull nginx

#2昏名、創(chuàng)建目錄 / 配置文件
mkdir -p /data/nginx/log
mkdir -p /data/nginx/conf

#3涮雷、啟動(dòng)容器
docker run --name nginx -p 80:80 -d nginx

#4、從nginx容器中的目錄文件拷貝到宿主機(jī)(逐條依次執(zhí)行)
docker cp nginx:/usr/share/nginx/html  /data/nginx
docker cp nginx:/etc/nginx/nginx.conf  /data/nginx/conf
docker cp nginx:/etc/nginx/conf.d  /data/nginx/conf

#5轻局、刪除容器
docker stop nginx
docker rm nginx

#6洪鸭、安裝nginx / 掛載配置文件
docker run -p 80:80 --name nginx \
-v /data/nginx/html:/usr/share/nginx/html \
-v /data/nginx/log:/var/log/nginx \
-v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro \
-v /data/nginx/conf/conf.d:/etc/nginx/conf.d \
-d nginx

#7膜钓、設(shè)置容器在docker啟動(dòng)的時(shí)候啟動(dòng)
docker update nginx --restart=always

http://IP/

image.png

Q&A
  • Q: no "events" section in configuration
  • A: 在nginx.conf文件中添加
    events {
    worker_connections 1024;
    }

四、安裝nacos

#1卿嘲、下載nacos鏡像(最新)
docker pull nacos/nacos-server:1.1.4

#2、創(chuàng)建目錄 / 配置文件
mkdir -p /data/nacos/log
# mkdir -p /data/nacos/conf

#3夫壁、啟動(dòng)容器
docker run --env MODE=standalone --name nacos -p 8848:8848 -d nacos/nacos-server:1.1.4

#4拾枣、從nacos容器中的目錄文件拷貝到宿主機(jī)(逐條依次執(zhí)行)
docker cp nacos:/home/nacos/conf  /data/nacos

#5、刪除容器
docker stop nacos
docker rm nacos

#6盒让、安裝nacos/ 掛載配置文件(nacos默認(rèn)工作目錄為/home目錄梅肤,可查看docker官網(wǎng))
docker run --env MODE=standalone -p 8848:8848 --name nacos \
-v /data/nacos/conf:/home/nacos/conf \
-v /data/nacos/log:/home/nacos/logs \
-d nacos/nacos-server:1.1.4

訪問地址:http://IP:8848/nacos
用戶名/密碼: nacos / nacos

image.png

五、安裝seata

seata官方文檔:https://seata.io/zh-cn/docs/ops/deploy-by-docker.html

# 查看seata鏡像:docker search seata
#1邑茄、下載seata鏡像(1.0.0)
docker pull seataio/seata-server:1.0.0

##2姨蝴、創(chuàng)建目錄 / 配置文件
mkdir -p /data/seata/log
mkdir -p /data/seata/conf

#3、啟動(dòng)seata-server實(shí)例  / 掛載鏡像文件
docker run --name seata-server -p 8091:8091 -d seataio/seata-server:1.0.0

#4肺缕、進(jìn)入seata容器
docker exec -it seata-server sh

#5左医、修改配置 / 指定注冊(cè)中心
cd /seata-server/resources
vi registry.conf

# 配置注冊(cè)中心
registry {                                                      
  # file ...nacos ...eureka...redis...zk...consul...etcd3...sofa
  type = "nacos"                               
                                  
  nacos {                                      
    application = "seata-server"               
    serverAddr = "127.0.0.1:8848"            
    namespace = ""                             
    cluster = "default"                        
    username = "nacos"                         
    password = "nacos"                         
  } 
……
:wq

#5、重啟seata
docker restart seata-server

#6同木、設(shè)置容器在docker啟動(dòng)的時(shí)候啟動(dòng)
docker update seata-server --restart=always

六浮梢、安裝sentinel

sentinel官方文檔:https://github.com/alibaba/Sentinel/wiki/%E6%8E%A7%E5%88%B6%E5%8F%B0#2-%E5%90%AF%E5%8A%A8%E6%8E%A7%E5%88%B6%E5%8F%B0
dockerHub: https://hub.docker.com/r/bladex/sentinel-dashboard/tags?page=1&ordering=last_updated

#1、拉取sentinel鏡像(1.7.1)
docker pull bladex/sentinel-dashboard:1.7.1

#2彤路、啟動(dòng)容器
docker run --name sentinel -p 8858:8858 -d bladex/sentinel-dashboard:1.7.1

訪問地址:http://IP:8858
用戶名/密碼: sentinel / sentinel

image.png

七秕硝、安裝zipkin 服務(wù)鏈路追蹤

官方文檔:https://zipkin.io/

# docker 安裝 zipkin 服務(wù)器
docker run --name zipkin -p 9411:9411 -d openzipkin/zipkin

# 設(shè)置容器在docker啟動(dòng)的時(shí)候啟動(dòng)
docker update zipkin --restart=always

訪問地址:http://ip:9411/zipkin/

image.png

八、安裝RabbitMQ

官方文檔:https://www.rabbitmq.com/networking.html
消息隊(duì)列模型:https://www.rabbitmq.com/getstarted.html

#1洲尊、docker 安裝 rabbitmq
docker run --name rabbitmq \
-p 5671:5671 \
-p 5672:5672 \
-p 4369:4369 \
-p 25672:25672 \
-p 15671:15671 \
-p 15672:15672 \
-d rabbitmq:management:3.8.2

#端口說明:--參考官網(wǎng)文檔
4369, 25672 (Erlang發(fā)現(xiàn)&集群端口) 
5672, 5671 (AMQP端口) 
15672 (web管理后臺(tái)端口) 
61613, 61614 (STOMP協(xié)議端口) 
1883, 8883 (MQTT協(xié)議端口)

# 2远豺、設(shè)置容器在docker啟動(dòng)的時(shí)候啟動(dòng)
docker update rabbitmq --restart=always

訪問地址:http://IP:15672
用戶名/密碼: guest/ guest

image.png

image.png

九、安裝Elasticsearch

#1坞嘀、下載鏡像(版本7.4.2 es與kibana版本要一致)
docker pull elasticsearch:7.4.2

#2躯护、創(chuàng)建掛載目錄
mkdir -p /data/elasticsearch/config
# es存儲(chǔ)的數(shù)據(jù),掛載到外部 data文件夾
mkdir -p /data/elasticsearch/data

#3姆吭、配置訪問權(quán)限
echo "http.host: 0.0.0.0" >> /data/elasticsearch/config/elasticsearch.yml

命令解析:
    echo :linux字符串的輸出命令
    "http.host: 0.0.0.0" : 配置"http.host: 0.0.0.0"代表es可以被遠(yuǎn)程的任何機(jī)器進(jìn)行訪問
    >> : 雙尖括號(hào)代表寫入榛做,把配置寫入 elasticsearch.yml文件中

# 配置用戶權(quán)限(讀、寫内狸、執(zhí)行)
chmod -R 777 /data/elasticsearch/

#4检眯、運(yùn)行容器 / 掛載目錄
docker run --name elasticsearch \
-p 9200:9200 \
-p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx512m" \
-v /data/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /data/elasticsearch/data:/usr/share/elasticsearch/data \
-v /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.4.2

命令解析:
    -p 9200:9200 :暴露端口9200,用于后臺(tái)發(fā)起http請(qǐng)求的端口
    -p 9300:9300 :暴露端口9300昆淡,用于es在分布式集群狀態(tài)下 節(jié)點(diǎn)之間通信端口
    -e "discovery.type=single-node" :指定參數(shù)锰瘸,es以單節(jié)點(diǎn)模式運(yùn)行
    -e ES_JAVA_OPTS="-Xms64m -Xmx512m" :設(shè)置es的初始內(nèi)存和最大內(nèi)存,否則一啟動(dòng)es會(huì)默認(rèn)占用全部?jī)?nèi)存(非常重要)
    -v 其余配置 : 掛載 容器中的文件與宿主機(jī)文件關(guān)聯(lián)昂灵,若修改宿主機(jī)的配置就等于修改容器中的配置

訪問地址:http://IP:9200/

es_login.png

  • 擴(kuò)展:安裝 elasticsearch-head
1避凝、下載鏡像
docker pull mobz/elasticsearch-head:5

#2舞萄、運(yùn)行容器
docker run --name elasticsearch-head -p 9100:9100 -d docker.io/mobz/elasticsearch-head:5

訪問地址:http://ip:9100/

head.png

十、安裝Kibana

安裝文檔:https://www.elastic.co/guide/en/kibana/current/docker.html

#1管削、下載鏡像(版本7.4.2)
docker pull kibana:7.4.2

#2倒脓、運(yùn)行容器
docker run --name kibana \
-p 5601:5601 \
-e ELASTICSEARCH_HOSTS=http://IP(es安裝地址):9200 \
-d kibana:7.4.2

命令解析:
    -e ELASTICSEARCH_HOSTS : 修改參數(shù),指定es連接地址

訪問地址:http://IP:5601

kibana.png

十一含思、安裝MinIO

mkdir -p /data/minio/{data,config}

docker run -p 9000:9000 --name minio \
  -e "MINIO_ACCESS_KEY=***" \
  -e "MINIO_SECRET_KEY=***" \
  -v /data/minio/data:/data \
  -v /data/minio/config:/root/.minio \
  -d minio/minio server /data

訪問 http://ip:9000/

十二崎弃、安裝Mongodb

# 下載最新版本
docker pull mongo

# 創(chuàng)建數(shù)據(jù)持久化目錄
mkdir -p /data/mongo/data

# 運(yùn)行容器
docker run -p 27017:27017 --name mongo \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=db@password \
-v /data/mongo/data:/data/db \
-d mongo

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市含潘,隨后出現(xiàn)的幾起案子饲做,更是在濱河造成了極大的恐慌,老刑警劉巖遏弱,帶你破解...
    沈念sama閱讀 217,826評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件盆均,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡漱逸,警方通過查閱死者的電腦和手機(jī)泪姨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來虹脯,“玉大人驴娃,你說我怎么就攤上這事⊙” “怎么了唇敞?”我有些...
    開封第一講書人閱讀 164,234評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵好爬,是天一觀的道長(zhǎng)玷坠。 經(jīng)常有香客問我,道長(zhǎng)密末,這世上最難降的妖魔是什么镶柱? 我笑而不...
    開封第一講書人閱讀 58,562評(píng)論 1 293
  • 正文 為了忘掉前任旷档,我火速辦了婚禮,結(jié)果婚禮上歇拆,老公的妹妹穿的比我還像新娘鞋屈。我一直安慰自己,他們只是感情好故觅,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評(píng)論 6 392
  • 文/花漫 我一把揭開白布厂庇。 她就那樣靜靜地躺著,像睡著了一般输吏。 火紅的嫁衣襯著肌膚如雪权旷。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,482評(píng)論 1 302
  • 那天贯溅,我揣著相機(jī)與錄音拄氯,去河邊找鬼躲查。 笑死,一個(gè)胖子當(dāng)著我的面吹牛译柏,可吹牛的內(nèi)容都是我干的镣煮。 我是一名探鬼主播,決...
    沈念sama閱讀 40,271評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼鄙麦,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼怎静!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起黔衡,我...
    開封第一講書人閱讀 39,166評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎腌乡,沒想到半個(gè)月后盟劫,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,608評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡与纽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評(píng)論 3 336
  • 正文 我和宋清朗相戀三年侣签,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片急迂。...
    茶點(diǎn)故事閱讀 39,926評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡影所,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出僚碎,到底是詐尸還是另有隱情猴娩,我是刑警寧澤,帶...
    沈念sama閱讀 35,644評(píng)論 5 346
  • 正文 年R本政府宣布勺阐,位于F島的核電站卷中,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏渊抽。R本人自食惡果不足惜蟆豫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望懒闷。 院中可真熱鬧十减,春花似錦、人聲如沸愤估。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽灵疮。三九已至织阅,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間震捣,已是汗流浹背荔棉。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工闹炉, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人润樱。 一個(gè)月前我還...
    沈念sama閱讀 48,063評(píng)論 3 370
  • 正文 我出身青樓渣触,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親壹若。 傳聞我的和親對(duì)象是個(gè)殘疾皇子嗅钻,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容