中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

360報危險網(wǎng)站深圳營銷型網(wǎng)站定制

360報危險網(wǎng)站,深圳營銷型網(wǎng)站定制,上海網(wǎng)站建站多少錢,簡潔大氣的網(wǎng)站首頁......續(xù)接上一篇文章。 六、鏡像庫及應(yīng)用 Rancher還有很多功能,在這里都不細說了,因為這是一篇快速上手指南,講到這已經(jīng)差不多了。但是還得補充下更重要的內(nèi)容,上一篇通篇講的都是使用Rancher拉取公共鏡像來創(chuàng)建容器或應(yīng)用&…

......續(xù)接上一篇文章。

六、鏡像庫及應(yīng)用

Rancher還有很多功能,在這里都不細說了,因為這是一篇快速上手指南,講到這已經(jīng)差不多了。但是還得補充下更重要的內(nèi)容,上一篇通篇講的都是使用Rancher拉取公共鏡像來創(chuàng)建容器或應(yīng)用,那么如何創(chuàng)建和使用我們自已的私有鏡像,這也是初學者必須掌握的。

1. Rancher添加鏡像庫

Rancher基礎(chǔ)架構(gòu)菜單下有一個添加鏡像庫的功能,除了DockerHub的公有鏡像庫不用添加,其他的公有或私有鏡像庫都應(yīng)該添加(就算是DockerHub私有鏡像也需要添加賬號密碼配置),這樣在用Rancher添加容器時,就能夠把搜索鏡像的范圍從DockerHub擴展到其他鏡像庫了。

2. 公網(wǎng)鏡像庫

一、基于DockerHub的賬號

1)首先得在DockerHub上注冊個賬號(沒翻墻估計注冊不了):https://hub.docker.com

假如賬號是rexentest

2)然后將本地鏡像(以alpine示例)打上tag標簽,可以通過docker pull alpine:3.4下載個鏡像到本地。

docker tag alpine:3.4 rexentest/alpine:3.4

3)然后登錄DockerHub

docker login

#輸入用戶名和密碼

4)push鏡像到DockerHub上

docker push rexentest/alpine:3.4

5)如果要下載這個新的鏡像,必須用新名稱rexentest/alpine:3.4

Docker pull rexentest/alpine:3.4

二、基于阿里云的賬號

阿里云鏡像主頁:https://dev.aliyun.com/search.html

方法基本同上,也需求注冊賬號,建立自己的鏡像管理中心,我已經(jīng)建了一個:

registry.cn-hangzhou.aliyuncs.com/rexen/

1)為了加快下載速度,建議使用阿里云的加速地址(以下是華東1區(qū)專用的地址):

sudo tee/etc/docker/daemon.json <<-'EOF'

{

? "registry-mirrors":["https://j8zppnv0.mirror.aliyuncs.com"]

}

EOF

sudo systemctldaemon-reload

sudo systemctlrestart docker

2)登錄阿里云鏡像庫:

sudo docker login--username=smooth00 registry.cn-hangzhou.aliyuncs.com

密碼:******

3)推送鏡像到鏡像庫:

sudo docker tag 鏡像Idregistry.cn-hangzhou.aliyuncs.com/rexen/鏡像名:鏡像版本號

sudo docker pushregistry.cn-hangzhou.aliyuncs.com/rexen/鏡像名:鏡像版本號

這樣就完成了鏡像的上傳,通過頁面能夠查到我下上傳的鏡像:

4)鏡像下載(pull)

docker pullregistry.cn-hangzhou.aliyuncs.com/rexen/鏡像名:鏡像版本號

5)在Rancher直接可以使用該鏡像,名稱得完整如下:

registry.cn-hangzhou.aliyuncs.com/rexen/鏡像名:鏡像版本號

在Rancher中使用阿里云的鏡像,首先需要在基礎(chǔ)架構(gòu)à鏡像庫中添加鏡像庫地址及授權(quán)賬號,如下所示:

3. 自建鏡像庫

創(chuàng)建內(nèi)網(wǎng)私有鏡像庫也可以用容器的方式創(chuàng)建,也挺簡單,但是要創(chuàng)建帶公有證書的https鏡像庫就不容易了,以下提供一個創(chuàng)建http訪問的私有鏡像庫方案。

1)在Rancher界面的主機如172.16.1.37面板上,添加容器,選擇鏡像registry:2

配置對外端口4000(可任意),但內(nèi)部端口一定是要5000

2)添加卷

參數(shù) /opt/data/registry:/var/lib/registry? 冒號前為主機下的文件目錄,冒號后為容器中的文件目錄。

在創(chuàng)建前需要到172.16.1.37中創(chuàng)建/opt/data/registry目錄,并給予讀寫權(quán)限:

chmod +777 /opt/data/registry

說明:添加卷的目的是因為容器一旦刪除,容器里的所有東西就消失了,而卷可以讓宿主機和容器共享這個目錄,到時候容器刪除后目錄還在,里面保存的鏡像也會存在。

3)調(diào)度規(guī)則

按照默認的指定本機調(diào)度

4)點擊創(chuàng)建,完成容器的創(chuàng)建。

直接瀏覽器訪問 http://172.16.1.37:4000/v2 顯示{} 表示正常

5)將私有鏡像庫加到Rancher的鏡像庫里

基礎(chǔ)架構(gòu)à鏡像庫à添加鏡像,選擇Custom,輸入地址172.16.1.37:4000

點擊創(chuàng)建,完成私有鏡像庫的添加。

6)在各個需要上傳和下載鏡像的主機里配置私有鏡像庫的http訪問方式

由于docker的push和pull鏡像都必須以https訪問,所以我們需要做以下配置

在/etc/docker下,創(chuàng)建daemon.json文件,寫入:

{"insecure-registries":["192.168.163.131:5000"]}

重啟Docker:

systemctl?restart?docker.service

如果重啟的是172.16.1.37里的docker,那么registry容器也將被停止,所以需要進入Rancher相應(yīng)的主機界面里,啟動registry。

7)上傳鏡像到私有庫

需要將本地的鏡像改名,如:

將mytomcat:0.0.1進行改名:

docker?tag?mytomcat:0.0.1?172.16.1.37:4000/tomcat7

改完名后,就可以直接push上傳了

docker?push?172.16.1.37:4000/tomcat7

curl http://172.16.1.37:4000/v2/_catalog或直接查看頁面也能看到上傳到鏡像

8)下載鏡像

docker?pull?172.16.1.37:4000/tomcat7

就能夠從私有庫中拉取鏡像。

通過Rancher也能將該鏡像添加成容器,Rancher能自動從私有庫下載(前提是Rancher鏡像庫添加了172.16.1.37:4000鏈接)

除了http訪問的鏡像庫,https自有證書訪問的鏡像庫也是可以搭建的,由于是自有證書,docker容器所在主機需要拷貝相關(guān)證書,否則也訪問不了。具體安裝見公司知識庫里我的另一篇文章:

http://172.16.1.9:8090/pages/viewpage.action?pageId=21529682

4. 創(chuàng)建自有鏡像

這個不屬于Rancher的功能,但是這塊事關(guān)鏡像創(chuàng)建的標準化和可維護化,用Dockerfile來創(chuàng)建鏡像已經(jīng)成為業(yè)內(nèi)的標準,所以強烈建議研發(fā)人員學會編輯Dockerfile。

創(chuàng)建鏡像的方法一般是兩種:

1)第一種:就是在正在使用的容器下,進行配置修改和在容器內(nèi)安裝軟件(比如安裝一個JDK,具體操作方式可以用docker run命令或是進入容器內(nèi)部命令窗口),然后再將本次修改的容器直接打成新的鏡像包,使用如下命令:

docker commit 當前容器ID 新的鏡像名

這種方式是最簡單的鏡像創(chuàng)建方式,但是也是最不值得倡導(dǎo)的方式,因為這種方式會導(dǎo)致多次版本迭代后鏡像冗余越來越大,可維護性變差,最后逼的又得從基礎(chǔ)鏡像開始。不像Dockerfile那樣通過RUN、ADD、COPY、CMD等命令就能持續(xù)構(gòu)建。

2)第二種:就是前面說的用Dockerfile指令來創(chuàng)建,這種方式能快速構(gòu)建規(guī)范的鏡像文件(只要使用了高質(zhì)量的指令來創(chuàng)建,那么鏡像的質(zhì)量就會很高),而且將Dockerfile上傳到SVN或GitHub上進行版本管理,再結(jié)合jenkins就能實現(xiàn)自動化構(gòu)建和部署。以下是我以tomcat為基礎(chǔ)做的一個簡單Dockerfile:

# First docker file frombolingcavalry# VERSION 0.0.1# Author: bolingcavalry# 基礎(chǔ)鏡像FROM tomcat:7.0.88-jre8# 作者# MAINTAINER zgh <zhengguanghua@rexen.com.cn># 定義工作目錄(定義變量)ENV WORK_PATH /usr/local/tomcat/confENV WEB_PATH /usr/local/tomcat/webapps# 定義要替換的文件名ENV USER_CONF_FILE_NAME tomcat-users.xml# 定義要替換的server.xml文件名ENV SERVER_CONF_FILE_NAME server.xml# 定義要發(fā)布的war包文件名ENV WEB_APP rfzf.war# 刪除原文件tomcat-users.xmlRUN rm $WORK_PATH/$USER_CONF_FILE_NAME# 復(fù)制文件tomcat-users.xmlCOPY  ./$USER_CONF_FILE_NAME $WORK_PATH/# 刪除原文件server.xmlRUN rm $WORK_PATH/$SERVER_CONF_FILE_NAME# 復(fù)制文件server.xmlCOPY  ./$SERVER_CONF_FILE_NAME $WORK_PATH/# 復(fù)制war包到wepapps目錄下COPY ./$WEB_APP $WEB_PATH/

這個Dockerfile實現(xiàn)的是在tomcat7基礎(chǔ)鏡像(默認從docker Hub拉取)中發(fā)布人防執(zhí)行平臺的war包,并配置tomcat-users.xml和server.xml文件,然后將需要發(fā)布的文件與Dockerfile放在一起發(fā)布:

執(zhí)行以下命令生成新的鏡像:

docker build -t mytomcat-zgh:0.0.1 .

如果是Dockerfile在github上,也可以直接調(diào)用生成鏡像,舉例:

docker build github.com/creack/docker-firefox

說明:由于Dockerfile指令很好學(懂點shell的人都沒問題,關(guān)鍵是如何提高質(zhì)量,避免創(chuàng)建過多l(xiāng)ayer),這種方式方便版本化追蹤管理,所以我們要求創(chuàng)建鏡像一定是這么做。

5. 鏡像的傳輸

鏡像images不是簡單的一個文件,所以沒辦法直接拷貝復(fù)制到別的機器上,目前鏡像的傳遞方式有兩種,一種是以鏡像庫的形式(包括公網(wǎng)鏡像庫或自建鏡像庫),一種是通過save和load命令的鏡像備份和加載方式。如下:

(一)、push和pull方式

1)首先得獲取鏡像庫的操作權(quán)限(除非自建不帶賬號登錄的鏡像庫),以阿里云為例:

sudo docker login --username=用戶名 registry.cn-hangzhou.aliyuncs.com

然后提示輸入密碼,完成登錄。

2)Push鏡像到庫:

先是tag成指定格式的鏡像名(只要是自建的鏡像都必須tag成指定格式):

docker tag [鏡像名]:[tag號] [IP或域]:[端口]/[倉庫名或鏡像名]:[鏡像版本號]

然后push新的鏡像:

docker push [IP或域]:[端口]/[倉庫名或鏡像名]:[鏡像版本號]

以阿里云為例:

sudo docker tag [鏡像ID] registry.cn-hangzhou.aliyuncs.com/[命名空間]/[倉庫名]:[鏡像版本號]

sudo docker pull registry.cn-hangzhou.aliyuncs.com/[命名空間]/[倉庫名]:[鏡像版本號]

3)從鏡像庫Pull:dockerpull [IP或域]:[端口]/[倉庫名或鏡像名]:[鏡像版本號]

如果鏡像是設(shè)置成公有性質(zhì)的,pull就不需要先登錄賬號和密碼了。

以阿里去為例:

sudo docker pull registry.cn-hangzhou.aliyuncs.com/[命名空間]/[倉庫名]:[鏡像版本號]

(二)、save和load方式

我們推薦用上面的方式,但如果鏡像不通過鏡像庫的push和pull,如何遷移到別的服務(wù)器上呢,方法如下:

1)save 鏡像

docker save 鏡像ID > /home/dockerfile/dockerimage1.0.tar

如果導(dǎo)出目錄不存在,需要事先創(chuàng)建。然后把這個生成的tar文件傳到別的服務(wù)器上

2)load鏡像

docker load < /home/dockerfile/dockerimage1.0.tar

因為生成的鏡像名為none,需要更改為你希望的鏡像名:tag版本號

docker tag $(docker images|grep none|awk '{print $3 }') 鏡像名:tag版本號

這樣就把tar中的鏡像加載到本地的鏡像列表里,通過docker images就能看到

注意:有很多人在頻繁操作鏡像和容器后,本地會出現(xiàn)大量的none鏡像和exited狀態(tài)的容器,我們建議要么用tag改名鏡像,要么直接都批量清除了:

docker ps -a | grep"Exited" | awk '{print $1 }'|xargs docker stop

docker ps -a | grep"Exited" | awk '{print $1 }'|xargs docker rm

docker images|grep none|awk '{print $3 }'|xargs docker rmi

七、附Docker常用命令

由于是在Rancher平臺下部署和管理Docker,其實不用記太多命令,就記住以下幾個:

(1)Docker服務(wù)啟動命令

1.? [root@localhost?~]#?service?docker?restart??

2.? Redirecting?to?/bin/systemctl?restart?docker.service??

3.? [root@localhost?~]#?service?docker?stop??

4.? Redirecting?to?/bin/systemctl?stop?docker.service??

5.? [root@localhost?~]#?service?docker?start??

6.? Redirecting?to?/bin/systemctl?start?docker.service??

(2)Docker查看當前運行的容器

docker ps

(3)Docker查看本地鏡像

docker images

(4)Docker搜索鏡像(默認是DockerHub)

docker search 鏡像名

(5)Docker刪除容器(得先dockerstop 容器ID)

docker rm 容器ID

(6)Docker刪除鏡像(得先docker rm 容器ID)

docker rmi 鏡像ID

(7)往容器中拷貝文件

docker cp/home/testfile 容器ID:/home/

(8)將容器中文件拷出:

docker cp 容器ID:/home/testfile/home/

(9)在容器中安裝新的程序

docker runimage_name apt-get install -y app_name

其它的命令可以上網(wǎng)搜索的到,就不一一列出。

(10)進入docker容器的方式

  • 使用dockerattach:sudo?docker?attach?容器ID
  • 使用SSH:在鏡像(容器)中安裝SSH Server,運行時開啟22端口映射
  • 使用nsenter:將nsenter安裝到主機中,通過sudo?docker?inspect?容器ID
  • 使用exec:sudo?docker?exec?-it?容器ID?/bin/bash
  • 使用Rancher管理界面:選擇容器管理的【執(zhí)行命令行】操作
http://www.risenshineclean.com/news/7543.html

相關(guān)文章:

  • 河南網(wǎng)站備案系統(tǒng)短信b站視頻推廣網(wǎng)站2023
  • 做網(wǎng)站webform mvc百度競價怎么做效果好
  • 小學網(wǎng)站建設(shè)及使用收錄
  • 網(wǎng)站建設(shè)建設(shè)公司有哪些如何建立電商平臺
  • 政府網(wǎng)站建設(shè)的創(chuàng)新機制百度網(wǎng)游排行榜
  • 公眾號模板免費關(guān)鍵詞優(yōu)化技巧
  • 哪些網(wǎng)站屬于b2b模式電子商務(wù)推廣
  • 社保網(wǎng)站是每月1-6號都是在建設(shè)中的嗎發(fā)外鏈軟件
  • 國內(nèi)外優(yōu)秀建筑設(shè)計網(wǎng)站濟南優(yōu)化網(wǎng)站的哪家好
  • 提供深圳網(wǎng)站制作公司廣告搜索引擎
  • 創(chuàng)意福州網(wǎng)站建設(shè)appstore關(guān)鍵詞優(yōu)化
  • 做網(wǎng)站需要找人優(yōu)化嗎百度app下載安裝官方免費下載
  • 網(wǎng)站制作什么樣的字體好看什么是seo推廣
  • 讓其他公司做網(wǎng)站應(yīng)注意什么問題桂林seo排名
  • 吉林省建筑市場監(jiān)管公共服務(wù)平臺朝陽seo
  • 外國排版網(wǎng)站網(wǎng)絡(luò)營銷什么意思
  • 網(wǎng)站建設(shè)鏈接演示湖北百度推廣電話
  • 南寧網(wǎng)站建設(shè)seo友鏈交換網(wǎng)站源碼
  • 做模具做什么網(wǎng)站信息流廣告案例
  • 西寧網(wǎng)站建設(shè)公司排行株洲seo快速排名
  • 校園網(wǎng)站群建設(shè)搜索引擎優(yōu)化入門
  • 生日禮物自己做網(wǎng)站南昌seo優(yōu)化公司
  • 周口哪家做網(wǎng)站好湖南平臺網(wǎng)站建設(shè)制作
  • 網(wǎng)站開發(fā)術(shù)語長沙網(wǎng)站推廣智投未來
  • 潮州市建設(shè)局官方網(wǎng)站下拉詞排名
  • wordpress置頂文章全文顯示seo怎樣
  • 做快消品看那些網(wǎng)站好外貿(mào)網(wǎng)站平臺都有哪些
  • 自建網(wǎng)站模板營銷外包
  • 網(wǎng)站建設(shè)網(wǎng)站建設(shè)網(wǎng)站運營與維護
  • 現(xiàn)在在市場上做網(wǎng)站怎么樣哪個平臺做推廣效果好