1. 程式人生 > >使用docker-machine管理遠端(目標)主機上的docker

使用docker-machine管理遠端(目標)主機上的docker

安裝docker-machine

$ curl -L https://github.com/docker/machine/releases/download/v0.14.0/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine &&
	chmod +x /tmp/docker-machine &&
	sudo cp /tmp/docker-machine /usr/local/bin/docker-machine

準備遠端主機

在使用 docker-machine 進行遠端安裝前我們需要做一些準備工作:
1.    在目標主機上建立一個使用者並加入sudo 組
2.    為該使用者設定 sudo 操作不需要輸入密碼
3.    把本地使用者的 ssh public key 新增到目標主機上

比如我們要在遠端主機上新增一個名為 nick 的使用者並加入 sudo 組:
$ sudo adduser nick
$ sudo usermod -a -G sudo nick


然後設定 sudo 操作不需要輸入密碼:
$ sudo visudo

把下面一行內容新增到文件的最後並儲存檔案:
nick   ALL=(ALL:ALL) NOPASSWD: ALL

最後把本地使用者的 ssh public key 新增到目標主機上:
$ ssh-copy-id -i ~/.ssh/id_rsa.pub
[email protected]

# 注意:此命令如果用sudo執行,~代表/root;如果不用sudo,~代表/peter/home

這幾步操作的主要目的是獲得足夠的許可權可以遠端的操作目標主機。    

在遠端主機上安裝virtual box

在本地主機上安裝virtualbox,如已安裝可忽略

$ sudo apt install virtualbox

在本地主機上,向遠端主機host1安裝virtualbox 
$ docker-machine create --engine-registry-mirror="https://s0iielsh.mirror.aliyuncs.com" --driver virtualbox host1

可能出現的異常:
Error with pre-create check: "This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory"
此錯誤有兩處需要注意:
1、BIOS需要開起硬體虛擬化支援
2、不要用Oracle VM virtaulbox建立虛擬機器,Oracle VM virtaulbox不支援巢狀虛擬機器。本文用的是VMware Workstation,所以是在 虛擬機器->設定 裡設定處理器的虛擬化引擎首選模式為“Intel VT-x/EPT 或AMD-V/RVI”及“虛擬化Intel VT-x/EPT 或AMD-V/RVI(V)”


列出安裝好的遠端虛擬機器
$ docker-machine ls 
	NAME    ACTIVE   DRIVER      STATE     URL                         SWARM   DOCKER       ERRORS
	host1   -        virtualbox   Running  tcp://192.168.99.100:2376          v17.06.0-ce  
檢視虛擬機器IP等資訊
$ docker-machine env host1  

操作遠端主機

用本機docker客戶端指向host1的docker
$ eval $(docker-machine env host1)


檢視遠端主機上的docker資訊
$ docker info


建立docker中的網路
$ docker network create dongnao_net
  
安裝並執行gitlab
$ docker run -d --net=dongnao_net --publish 1443:443 --publish 18080:80 --name gitlab --restart always gitlab/gitlab-ce:latest
埠18080,通過你的虛擬機器IP取訪問就可以看到頁面了  


安裝並執行rabbitmq
$ docker run -d --net=dongnao_net --name rabbitmq --publish 5671:5671 --publish 5672:5672 --publish 4369:4369 --publish 25672:25672 --publish 15671:15671 --publish 15672:15672 rabbitmq:management
連線的埠是 5672
web控制檯是 15672

參考: https://www.cnblogs.com/sparkdev/p/7044950.html

相關推薦

使用docker-machine管理遠端目標機上docker

安裝docker-machine$ curl -L https://github.com/docker/machine/releases/download/v0.14.0/docker-machine-`uname -s`-`uname -m` >/tmp/docker

Docker容器技術之映象管理基礎

上一篇文章連結:Docker容器技術基礎用法(二) 目錄   一、回顧 1.1docker容器的狀態 1.2docker容器管理時常用的命令 1.3docker的架構形式 二、About Docker Images 2.1 關於docker映象的作用

16、CentOS7 安裝Docker之擴充套件docker叢集管理叢集之swram

docker叢集管理之swarm 一、前言 實踐中會發現,生產環境中使用單個 Docker 節點是遠遠不夠的,搭建 Docker 叢集勢在必行。然而,面對 Kubernetes, Mesos 以及 Swarm 等眾多容器集群系統,我們該如何選擇呢?它們之中,Swarm 是 Docker 原生

Java專案開發成績管理系統 學生資訊模組—介面設定

學生資訊模組負責管理學生的個人資訊,包括對學生人數的增加對資訊的修改等, 1.主介面設計: 學生資訊主介面包含選單欄,列表按鈕,等元件,其實現程式碼如下: package student; import grade.GIndex; import java.awt.*;

Java專案開發成績管理系統 成績資訊模組—介面設定

主介面和上一篇部落格大致相同,(編寫過程點選上一篇部落格), 效果如下: 程式碼如下: package grade; import course.CIndex; import java.awt.*; import java.awt.event.ActionEven

Machine Learning第八講【非監督學習】--成分分析PCA

一、Principal Component Analysis Problem Formulation(主成分分析構思) 首先來看一下PCA的基本原理: PCA會選擇投影誤差最小的一條線,由圖中可以看出,當這條線是我們所求時,投影誤差比較小,而投影誤差比較大時,一定是這條線偏離最優直線。

docker2:安裝docker管理工具rancher

1,關於rancher rancher是一個docker的管理系統。http://rancher.com/ 相同類似的系統還有,http://shipyard-project.com/。 有管理介面的好處是,可以方便的檢視有多少容器在執行,可以

Linux 遠端管理工具XManager

什麼是 XManager Xmanager 是市場上領先的 PC X 伺服器,可將X應用程式的強大功能帶入 Windows 環境。 提供了強大的會話管理控制檯,易於使用的 X 應用程式啟動器,X 伺服器配置檔案管理工具,SSH 模組和高效能 PC X 伺

Linux 遠端管理工具WinSCP

什麼是 WinSCP 關於 WinSCP,維基百科描述如下: WinSCP 是一款開源的 SFTP 客戶端,運行於 Windows 系統下,遵照 GPL 釋出。WinSCP 除了 SFTP,還支援 SSH、SCP。 WinSCP 的開發始於 20

Docker學習5------部署Shipyard Docker管理工具

[[email protected] /]# curl -s https://shipyard-project.com/deploy | bash -s Unable to find image 'alpine:latest' locally latest: Pulling from library

Docker系列開篇之Virtual Machine VS Container

前言 本節開始我們正式進入Docker系列,網上關於Docker相關文章如數家珍,寫部落格至今,我也一直在朝著如何寫出通俗易懂且不枯燥的文章這個目標前進,喃喃自語的同時也希望看到文章的童鞋能明白我在講什麼,將知識點敘述清楚沒有,講解的效果如何,是否有啟發或收穫,能夠得到及時的反饋當然也能讓我理解的更透徹,好

從零開始——基於角色的權限管理01補充

itl jsp mage logs log sonar class htm -1 此博文較為詳細的介紹從零開始——基於角色的權限管理01文中的兩個部分的流程(解釋代碼)。 1)  index.jsp中提交跳轉action      action的login,獲取jsp頁面傳

AssetBundle管理機制

資源加載 應該 卸載 針對性 idt current ntc ims nor ◆◆◆◆ AssetBundle卸載 內存分析 在上圖中的右側,我們列出了各種內存物件的卸載方式: ● 場景物件(GameObject):這類物件可通過Destr

AssetBundle管理機制

atlas strong img rem byte das let atl 由於 AssetBundle內存管理機制 接上期AssetBundle打包的講解,我們今天為大家繼續探秘AssetBundle,從管理機制的角度出發,談談

布局管理

lin 其中 bottom tom left near frame 屬性 strong 1.LinearLayout(線性布局) 讓所有的組件都成為單一的方向,即垂直的或者水平的(默認)。 android:layout_weight //該屬性控制水平和垂直方向

文件與目錄管理命令

信息 touch share 單位換算 目錄管理類命令包括:cd,pwd,ls,mkdir,rmdir,tree,cp,mv,rm,touch,stat1.1.ls功能:列出文件或目錄命令幫助:man lsinfo lsls --helphelp cd #只有內部命令才能用ls /usr/s

安全類工具制作第005篇:進程管理

btn creat lan 控件 lookup 包括 lln create tdi 一、前言 這次的程序是為了完好上一次所編寫的進程管理器。使得當我們選中某一個進程的時候。能夠查看其DLL文件,而且能夠對可疑的模塊進行卸載操作。這樣就能夠有效對抗DLL的

管理經驗——項目管理基礎

ace 設計模式 watermark 最重要的 信息系統 思維導圖 主題 ont -c ?? 引 開始準備信息系統項目管理師的考試,借機熟悉並掌握一些項目管理方面的知識。學習也有一段時日。考試的目的更是為了開闊自己的眼界,提升自己的能力,本篇博文僅是對項管

stl內存管理allocator

至少 bsp 大於 回收 data 分配器 裏的 而且 ima 1. STL容器簡介 STL提供了很多泛型容器,如vector,list和map。程序員在使用這些容器時只需關心何時往容器內塞對象,而不用關心如何管理內存,需要用多少內存,這些STL容器極大地方便了C++程序的

Mac服務管理-Launchd

dir keepal item tcp/ip 開發 定時 ram com tdi 背景: 在Mac下沒有像Linux那樣有很多的關於init方面的工具,從init的發展歷史https://en.wikipedia.org/wiki/Init上可以知道,Mac使用的是Lau