docker-machine 之簡(jiǎn)單安裝使用

安裝
[官方Release庫(kù):]https://github.com/docker/machine/releases/
[官方安裝文檔:]https://docs.docker.com/machine/install-machine/

base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&
  sudo mv /tmp/docker-machine /usr/local/bin/docker-machine &&
  chmod +x /usr/local/bin/docker-machine

安裝完成后,查看docker-machine版本

[root@localhost tmp]# docker-machine -v
docker-machine version 0.16.0, build 702c267f

為了支持命令自動(dòng)補(bǔ)全,還可以安裝補(bǔ)全腳本:

scripts=(docker-machine-prompt.bash docker-machine-wrapper.bash docker-machine.bash); for i in "${scripts[@]}"; do  wget https://raw.githubusercontent.com/docker/machine/v0.16.0/contrib/completion/bash/${i} -P  /etc/bash_completion.d; done

采用generic驅(qū)動(dòng)給另一個(gè)主機(jī)安裝docker
官方文檔:
[generic驅(qū)動(dòng)]https://docs.docker.com/machine/drivers/generic/

  1. 需要有ssh公鑰彭雾,沒(méi)有就生成一個(gè): ssh-keygen
  2. 復(fù)制到遠(yuǎn)程主機(jī): ssh-copy-id your ip
  3. docker-machine create -d generic --generic-ip-address=ip地址 --generic-ssh-key ~/.ssh/id_rsa --generic-ssh-user=root 194210
    這一步遇到了問(wèn)題,輸出顯示沒(méi)有啟動(dòng)成功
Running pre-create checks...
Creating machine...
(194210) Importing SSH key...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with centos...
Error creating machine: Error running provisioning: something went wrong running an SSH command
command : sudo systemctl -f restart docker
err     : exit status 1
output  : Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.

連到遠(yuǎn)程主機(jī)上跋核,上面的報(bào)錯(cuò)不夠詳細(xì),看看systemctl里docker服務(wù)的內(nèi)容
cat /etc/systemd/system/docker.service.d/10-machine.conf

ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --storage-driver overlay2 --tlsverify --tlscacert /etc/docker/ca.pem --tlscert /etc/docker/server.pem --tlskey /etc/docker/server-key.pem --label provider=generic 

把ExecStart的內(nèi)容拿出來(lái)執(zhí)行一下

/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --storage-driver overlay2
INFO[2019-09-04T13:59:16.648204922+08:00] Starting up                                  
WARN[2019-09-04T13:59:16.648556107+08:00] [!] DON'T BIND ON ANY IP ADDRESS WITHOUT setting --tlsverify IF YOU DON'T KNOW WHAT YOU'RE DOING [!] 
INFO[2019-09-04T13:59:16.649641583+08:00] parsed scheme: "unix"                         module=grpc
INFO[2019-09-04T13:59:16.649667372+08:00] scheme "unix" not registered, fallback to default scheme  module=grpc
INFO[2019-09-04T13:59:16.649710791+08:00] ccResolverWrapper: sending update to cc: {[{unix:///run/containerd/containerd.sock 0  <nil>}] }  module=grpc
INFO[2019-09-04T13:59:16.649732778+08:00] ClientConn switching balancer to "pick_first"  module=grpc
INFO[2019-09-04T13:59:16.649842261+08:00] pickfirstBalancer: HandleSubConnStateChange: 0xc0007486d0, CONNECTING  module=grpc
INFO[2019-09-04T13:59:16.650179805+08:00] pickfirstBalancer: HandleSubConnStateChange: 0xc0007486d0, READY  module=grpc
INFO[2019-09-04T13:59:16.651005252+08:00] parsed scheme: "unix"                         module=grpc
INFO[2019-09-04T13:59:16.651025012+08:00] scheme "unix" not registered, fallback to default scheme  module=grpc
INFO[2019-09-04T13:59:16.651038259+08:00] ccResolverWrapper: sending update to cc: {[{unix:///run/containerd/containerd.sock 0  <nil>}] }  module=grpc
INFO[2019-09-04T13:59:16.651045861+08:00] ClientConn switching balancer to "pick_first"  module=grpc
INFO[2019-09-04T13:59:16.651096185+08:00] pickfirstBalancer: HandleSubConnStateChange: 0xc00070dc70, CONNECTING  module=grpc
INFO[2019-09-04T13:59:16.651364815+08:00] pickfirstBalancer: HandleSubConnStateChange: 0xc00070dc70, READY  module=grpc
failed to start daemon: error initializing graphdriver: overlay2: the backing xfs filesystem is formatted without d_type support, which leads to incorrect behavior. Reformat the filesystem with ftype=1 to enable d_type support. Backing filesystems without d_type support are not supported.

看這一句:error initializing graphdriver: overlay2: the backing xfs filesystem is formatted without d_type support叛买,搜索了一下

[參考一]https://blog.csdn.net/weixin_41826563/article/details/80549323
[參考二]https://blog.csdn.net/liukuan73/article/details/77986139
這里要說(shuō)明一下砂代,本文中的遠(yuǎn)程主機(jī)系統(tǒng)是centos7.2,和分區(qū)有關(guān)系,這里選另一種方法聪全,把ExecStart里的--storage-driver overlay2去掉
然后在遠(yuǎn)程主機(jī)上執(zhí)行:

systemctl daemon-reload
systemctl start docker

可以看到docker啟動(dòng)了,docker info看到Storage Driver類型是:devicemapper

  1. 看一下194210這個(gè)環(huán)境
docker-machine env 194210
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://10.129.194.210:2376"
export DOCKER_CERT_PATH="/root/.docker/machine/machines/194210"
export DOCKER_MACHINE_NAME="194210"
# Run this command to configure your shell: 
# eval $(docker-machine env 194210)

現(xiàn)在可從docker-machine管理194210的docker了

先加載環(huán)境變量
eval $(docker-machine env 194210)

運(yùn)行一個(gè)容器試試

docker run -it python:3.6.5-alpine  sh 
/ # python
Python 3.6.5 (default, Jun  6 2018, 23:08:29) 
[GCC 6.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello World!")
Hello World!

可以ssh到遠(yuǎn)程主機(jī)上看效果
退出194210的docker環(huán)境泊藕,實(shí)際上就是去掉DOCKER的幾個(gè)環(huán)境變量

 dockerenv=(DOCKER_TLS_VERIFY DOCKER_HOST DOCKER_CERT_PATH DOCKER_MACHINE_NAME);for i in ${dockerenv[@]}; do unset $i; done
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市难礼,隨后出現(xiàn)的幾起案子娃圆,更是在濱河造成了極大的恐慌,老刑警劉巖蛾茉,帶你破解...
    沈念sama閱讀 211,639評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件讼呢,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡谦炬,警方通過(guò)查閱死者的電腦和手機(jī)悦屏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)键思,“玉大人础爬,你說(shuō)我怎么就攤上這事『鹆郏” “怎么了看蚜?”我有些...
    開封第一講書人閱讀 157,221評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)赔桌。 經(jīng)常有香客問(wèn)我供炎,道長(zhǎng)渴逻,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,474評(píng)論 1 283
  • 正文 為了忘掉前任音诫,我火速辦了婚禮惨奕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘竭钝。我一直安慰自己梨撞,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評(píng)論 6 386
  • 文/花漫 我一把揭開白布蜓氨。 她就那樣靜靜地躺著聋袋,像睡著了一般队伟。 火紅的嫁衣襯著肌膚如雪穴吹。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,816評(píng)論 1 290
  • 那天嗜侮,我揣著相機(jī)與錄音港令,去河邊找鬼。 笑死锈颗,一個(gè)胖子當(dāng)著我的面吹牛顷霹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播击吱,決...
    沈念sama閱讀 38,957評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼淋淀,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了覆醇?” 一聲冷哼從身側(cè)響起朵纷,我...
    開封第一講書人閱讀 37,718評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎永脓,沒(méi)想到半個(gè)月后袍辞,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,176評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡常摧,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評(píng)論 2 327
  • 正文 我和宋清朗相戀三年搅吁,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片落午。...
    茶點(diǎn)故事閱讀 38,646評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡谎懦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出溃斋,到底是詐尸還是另有隱情界拦,我是刑警寧澤,帶...
    沈念sama閱讀 34,322評(píng)論 4 330
  • 正文 年R本政府宣布盐类,位于F島的核電站寞奸,受9級(jí)特大地震影響呛谜,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜枪萄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評(píng)論 3 313
  • 文/蒙蒙 一隐岛、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧瓷翻,春花似錦聚凹、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至对妄,卻和暖如春湘今,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背剪菱。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工摩瞎, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人孝常。 一個(gè)月前我還...
    沈念sama閱讀 46,358評(píng)論 2 360
  • 正文 我出身青樓旗们,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親构灸。 傳聞我的和親對(duì)象是個(gè)殘疾皇子上渴,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評(píng)論 2 348

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