docker-服務管理和遠端訪問
阿新 • • 發佈:2018-12-10
服務管理
# 這個或許不用多說,docker服務本身執行在linux上,利用liinux本身的服務管理即可
# 啟動
sudo service docker start
# 狀態
sudo service docker status
# 關閉
sudo service docker stop
#重啟
sudo service docker restart
訪問模式
# 之前說過,服務端執行,客戶端指令 # 現在就說說客戶端和服務端的交流方式把 # 通過 -H 選項指定連線交流方式,支援如下三種方式 -H tcp://host:port -H unix://path/to/socket # 預設方式 -H fd://* -H fd://socketfd # 後兩個歸為一類 # 後面再仔細說配置
開啟遠端
# 是否支援遠端,關鍵看啟動引數 # 1. 配置檔案 vim /etc/default/docker # 2. 關鍵引數 DOCKER_OPTS="..." # 3. 配置名稱 DOCKER_OPTS="label name=remote_1" # label後面是屬性鍵值對,只要是配置都可以寫在DOCKER_OPTS中 # 4. 配置遠端 DOCKER_OPTS="labelname=remote_1 -H tcp://0.0.0.0:2375" # 這裡0.0.0.0會自動繫結宿主機ip # 一般docker常使用2375埠 # 5. 服務重啟 sudo service docker restart
遠端訪問
# rest訪問 curl http://ip:port/info # rest方式,指定ip:port後,後面的api形式就是一般的常用指令 #docker-client方式 docker -H tcp://ip:port info # 指定為遠端訪問,並填寫遠端訪問地址 # 拋開遠端指定,操作和單機沒區別 # 最熟悉的還是client模式,不過有點長 export DOCKER_HOST="tcp://ip:port" # 新增DOCKER_HOST環境變數,然後就可以直接執行docker了 docker info # 此時,該伺服器上的客戶端和服務端就分離了 # 客戶端的連線物件可變,本身就是這樣,兩者的確是不一定的對應關係 # 如果想連線本機 export DOCKER_HOST="" # 預設就是連線本機的
雙端支援
# 退回到開啟遠端的docker服務端
docker info
# 居然會報錯
# 當然了,配置DOCKER_HOST也能輕鬆解決,但是未免太沒意思
vim /etc/default/docker
DOCKER_OPTS="label name=remote_server -H tcp://0.0.0.0:2375 -H ..."
# 恩。。。具體引數我就不說了
# 主要是想說-H可以支援多個配置
# 當配置了遠端訪問時,本機訪問有些問題
# 為此,可以
1. 配置 export DOCKER_HOST
2. 多配置一個 -H
影響
可以在程式碼裡面呼叫docker-api啊,這個不論開發,運維,監控還是新建都必須是很強大