Docker Machine遠端部署docker主機環境
我學習Docker Machine首先肯定思考為什麼要使用它?我直接上伺服器拉取執行映象跑服務也很快啊!為什麼需要這個Docker Machine呢?
首先學習docker我們體會到了容器的好處,保證了線上線下環境的一致性,但是我們確實能發現從映象的下載到容器的執行,我們用了很多的命令去執行,當我們在本地筆記本完成了測試之後,我們把這些容器部署到生產環境時,我們還是需要執行很多指令碼,這確實是一項複雜的工作!
而使用Docker Machine我們可以在本地部署相應的環境就同時完成遠端docker主機環境的部署,可以節省下很多重複的勞動,減少容錯率。
預設本地主機安裝好docker:
一.下載docker-machine:
curl -L
檢視是否成功:
[root@localhost ~]# docker-machine -v
docker-machine version 0.13.0, build 9ba6da9
二.ssh無密碼登入
本地主機ip:192.168.1.9
遠端主機ip:192.168.1.10
[root@localhost ~]# ssh-keygen
[root@localhost ~]# ssh-copy-id 192.168.1.10
三.開啟machine通訊埠
[root@localhost ~]# firewall-cmd --add-port=2376/tcp --permanent
[root@localhost ~]# firewall-cmd --reload
四.建立docker遠端主機命名farHost
[[email protected]~]# docker-machine create -d generic –generic-ip-address=192.168.1.10 farHost
Running pre-create checks…
Creating machine…
(swarm-master) No SSH key specified. Assuming an existing key at the default location.
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…
Running…
[
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
farHost- generic Running tcp://192.168.1.10:2376 v17.12.1-ce
五.改變docker環境變數
[[email protected] ~]# docker-machine env host1
export DOCKER_TLS_VERIFY="1" //使用tls協議
export DOCKER_HOST="tcp://192.168.1.10:2376" //遠端主機docker的ip地址及埠
export DOCKER_CERT_PATH="/root/.docker/machine/machines/farHost" 指明瞭我們docker客戶端在認證的過程中使用證書的路徑
export DOCKER_MACHINE_NAME="farHost"//遠端主機docker名
# Run this command to configure your shell:
# eval $(docker-machine env farHost)
把farHost的環境變數配置到當前的shell中
[root@localhost~]# eval $(docker-machine env farHost)
六.執行容器檢視是否同步
[root@localhost~]# docker run -d busybox
[root@localhost~]# docker-machine ssh host1
[root@farHost~]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox latest f6e427c148a7 6 days ago 1.15MB
[root@farHost~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d9b5005a264 busybox "sh" 17 seconds ago Up 16 seconds ago modest_joliot
[root@farHost~]# exit
[root@localhost~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d9b5005a264 busybox "sh" 57seconds ago Up 16 seconds ago modest_joliot
發現本地主機和遠端主機同時都運行了一樣的busybox的容器,即使我們有再多的機器需要部署生產環境,我們也只需要 do once就可以了。
相關推薦
Docker Machine遠端部署docker主機環境
我學習Docker Machine首先肯定思考為什麼要使用它?我直接上伺服器拉取執行映象跑服務也很快啊!為什麼需要這個Docker Machine呢? 首先學習docker我們體會到了容器的好處,保證了線上線下環境的一致性,但是我們確實能發現從映象的下載到容器
jenkins+docker+docker machine 遠端部署
dotnet publish -c Release docker build -t microtest:1.0 --build-arg microport=1000 -f "$WORKSPACE/MicroService/Dockerfile" "$WORKSPACE/MicroService" d
idea 遠端部署docker 流程
最近自己研究了一下idea遠端部署docker 記錄一下。 一:開啟伺服器2375埠(docker遠端控制支援埠) vim /usr/lib/systemd/system/docker.service 新增 [Service] ExecStart= ExecSta
使用Docker 一鍵部署 LNMP+Redis 環境
使用Docker 部署 LNMP+Redis 環境 Docker 簡介 Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。推薦核心版本3.8及以上
多個docker鏡像部署lnmp開發環境
group process yun ora serve erro select sql_mod href 與其說是lnmp環境,還不如說是3個docker環境的mysql、php和nginx鏡像。下面我們將以依次按照mysql、php和nginx鏡像的順序描述它們的搭建過程
Spring Cloud基於Docker進行打包部署4-容器間的連線和通訊(單主機環境)
--- elasticsearch: image: elasticsearch:latest command: elasticsearch -Des.network.host=0.0.0.0 ports: - "9200:9200" logstash: image: logstash
Docker部署Jenkins測試環境
-name docker hub 你們 mkdir -p sts eas pos 目錄 安裝docker環境 yum install epel-release -y && yum install docker -y 如果是高手需要docker-compose
Docker machine 多主機管理
-m .com host The run state 1.3 roo load 我們生產環節中一定是 多host出現的,所以我用到docker-machine 管理工具,實現對多個host上面的docker的管理。 1、安裝docker-machine設置環境變量;base
記錄Linux CentOS 7系統完整部署Docker容器環境教程
zoom 成功 emc -a rem 企業版 device rep shu 筆者之前有在"詳細介紹Ubuntu 16.04系統環境安裝Docker CE容器的過程"文章中有介紹到利用Ubuntu系統安裝Docker容器環境的過程。如果我們有使用CentOS環境的話,安裝
Centos 7部署docker環境、基本命令使用及簡單實戰
方式 包括 socket stdin 兩種 輕松 本機 打開 root權限 Docker是一個開源的應用容器引擎,屬於Linux容器的一種封裝,是目前最流行的Linux容器解決方案。docker可以為任何應用創建一個輕量級、可移植的容器,然後容器可以運行在任何安裝有dock
使用docker-compose來部署開發環境
evo mysql redis name fail 更新 訪問 def pri docker-compose的作用 docker-comopse可以幫助我們快速搭建起開發環境,比如你可以去把redis,mongodb,rabbitmq,mysql,eureka,config
linux系統部署Java執行環境,以及docker部署mysql(docker-compose)
部署JavaJDK環境 #yum -y install java-1.8.0-openjdk 部署mysql使用docker(用docker-compose封裝好docker-compose up -d執行) 建立docker-compose.yml vim
用docker部署nginx+php環境時,訪問php檔案不執行
今天用docker部署nginx+php環境時,訪問php頁面,提示404錯誤。檢視docker日誌發現下面錯誤: [error] 6#6: *1 connect() failed (111: Conn
Linux環境部署------docker篇
前言:在linux系統中部署環境往往要修改很多配置,利用docker容器技術可以簡便這些操作,快速部署伺服器環境。 docker:通俗來說,就是類似於虛擬機器的執行原理,寄宿在主機上執行。而在docker容器裡面執行的各種容器,類似於安裝window系統需要的映象,當一個系統安裝純淨版時,什麼都
window下使用Docker部署前端開發環境
背景 很早之前就關注過docker,看過有關的資料,但是那時候docker並不支援window,使用需要使用 docker toolbox 採用VirtualBox虛擬機器的方式來安裝,覺得很麻煩,就一直沒有嘗試。 最近無意中發現docker for windo
實戰Docker部署tomcat釋出環境
1.建立Dockerfile,生成tomcat-jre7映象 Dockerfile內容: FROM tomcat:7-jre7 MAINTAINER gena <[email protected]> ADD tomcat-u
超級賬本專案在centos7環境下基於Docker安裝與部署
Hyperledger 專案是開源介面向開放、標準區塊鏈技術的首個重要探索,在 Linux 基金會的支援下,吸引了眾多科技和金融巨頭的參與。 本文將介紹 hyperledger 專案的歷史,並以核心的 fabric 專案為例,講解如何快速安裝部署和應用區塊鏈系統。專案基於Do
內網環境下安裝部署Docker
前言 大部分公司都有屬於自己的內網環境,大部分的整合開發環境也是在內網下部署。最近面臨同樣的需求,內網CentOS部署GitLab 和 Nexus。 思路 首先確定思路,毫無疑問使用Docker是最好的選擇,我只用解決Docker的安裝問題即可,然後使用G
Spring Cloud基於Docker進行打包部署1-環境配置和docker打包執行
1、使用linux虛擬機器離線安裝docker(2)將安裝包拷貝到本地linux虛擬機器中,使用dpkg -i xxx.deb命令安裝。這裡有個問題,docker有一些依賴包,需要一併安裝:下載依賴deb。網址:https://pkgs.org/搜尋:libltdl7搜尋:l
使用Docker 部署 LNMP+Redis 環境
使用Docker 部署 LNMP+Redis 環境 Docker 簡介 Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。推薦核心版本