国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

云服務(wù)器|WEB服務(wù)器|FTP服務(wù)器|郵件服務(wù)器|虛擬主機|服務(wù)器安全|DNS服務(wù)器|服務(wù)器知識|Nginx|IIS|Tomcat|

服務(wù)器之家 - 服務(wù)器技術(shù) - 服務(wù)器知識 - Docker創(chuàng)建鏡像、怎么修改、上傳鏡像等詳細介紹

Docker創(chuàng)建鏡像、怎么修改、上傳鏡像等詳細介紹

2021-01-05 16:09Docker教程網(wǎng) 服務(wù)器知識

這篇文章主要介紹了Docker創(chuàng)建鏡像、怎么修改、上傳鏡像等詳細介紹的相關(guān)資料,需要的朋友可以參考下

Docker 創(chuàng)建鏡像、修改、上傳鏡像

–創(chuàng)建鏡像有很多方法,用戶可以從 Docker Hub 獲取已有鏡像并更新,也可以利用本地文件系統(tǒng)創(chuàng)建一個。

一、創(chuàng)建鏡像

創(chuàng)建鏡像有很多方法,用戶可以從 Docker Hub 獲取已有鏡像并更新,也可以利用本地文件系統(tǒng)創(chuàng)建一個。

二、修改已有鏡像

1、先使用下載的鏡像啟動容器。

?
1
2
$ docker run -t -i training/sinatra /bin/bash
root@0b2616b0e5a8:/#

注意:記住容器的 ID,稍后還會用到。

2、在容器中添加 json 和 gem 兩個應(yīng)用。

?
1
root@0b2616b0e5a8:/# gem install json

當結(jié)束后,我們使用 exit 來退出,現(xiàn)在我們的容器已經(jīng)被我們改變了,使用 docker commit 命令來提交更新后的副本。

?
1
2
$ sudo docker commit -m "Added json gem" -a "Docker Newbee" 0b2616b0e5a8 ouruser/sinatra:v2
4f177bd27a9ff0f6dc2a830403925b5360bfe0b93d476f7fc3231110e7f71b1c

其中,-m 來指定提交的說明信息,跟我們使用的版本控制工具一樣;-a 可以指定更新的用戶信息;之后是用來創(chuàng)建鏡像的容器的 ID;最后指定目標鏡像的倉庫名和 tag 信息。創(chuàng)建成功后會返回這個鏡像的 ID 信息。

使用 docker images 來查看新創(chuàng)建的鏡像。

?
1
2
3
4
5
$ sudo docker images
REPOSITORY     TAG   IMAGE ID    CREATED    VIRTUAL SIZE
training/sinatra  latest 5bc342fa0b91  10 hours ago 446.7 MB
ouruser/sinatra   v2   3c59e02ddd1a  10 hours ago 446.7 MB
ouruser/sinatra   latest 5db5f8471261  10 hours ago 446.7 MB

之后,可以使用新的鏡像來啟動容器

?
1
2
$ sudo docker run -t -i ouruser/sinatra:v2 /bin/bash
root@78e82f680994:/#

三、利用 Dockerfile 來創(chuàng)建鏡像

使用 docker commit 來擴展一個鏡像比較簡單,但是不方便在一個團隊中分享。我們可以使用 docker build 來創(chuàng)建一個新的鏡像。為此,首先需要創(chuàng)建一個 Dockerfile,包含一些如何創(chuàng)建鏡像的指令。
新建一個目錄和一個 Dockerfile

?
1
2
3
$ mkdir sinatra
$ cd sinatra
$ touch Dockerfile

Dockerfile 中每一條指令都創(chuàng)建鏡像的一層,例如:

?
1
2
3
4
5
6
# This is a comment
FROM ubuntu:14.04
MAINTAINER Docker Newbee <newbee@docker.com>
RUN apt-get -qq update
RUN apt-get -qqy install ruby ruby-dev
RUN gem install sinatra

Dockerfile 基本的語法是

使用 # 來注釋

FROM 指令告訴 Docker 使用哪個鏡像作為基礎(chǔ)

接著是維護者的信息

RUN 開頭的指令會在創(chuàng)建中運行,比如安裝一個軟件包,在這里使用 apt-get 來安裝了一些軟件

編寫完成 Dockerfile 后可以使用 docker build 來生成鏡像。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
$ sudo docker build -t="ouruser/sinatra:v2" .
Uploading context 2.56 kB
Uploading context
Step 0 : FROM ubuntu:14.04
 ---> 99ec81b80c55
Step 1 : MAINTAINER Newbee <newbee@docker.com>
 ---> Running in 7c5664a8a0c1
 ---> 2fa8ca4e2a13
Removing intermediate container 7c5664a8a0c1
Step 2 : RUN apt-get -qq update
 ---> Running in b07cc3fb4256
 ---> 50d21070ec0c
Removing intermediate container b07cc3fb4256
Step 3 : RUN apt-get -qqy install ruby ruby-dev
 ---> Running in a5b038dd127e
Selecting previously unselected package libasan0:amd64.
(Reading database ... 11518 files and directories currently installed.)
Preparing to unpack .../libasan0_4.8.2-19ubuntu1_amd64.deb ...
Setting up ruby (1:1.9.3.4) ...
Setting up ruby1.9.1 (1.9.3.484-2ubuntu1) ...
Processing triggers for libc-bin (2.19-0ubuntu6) ...
 ---> 2acb20f17878
Removing intermediate container a5b038dd127e
Step 4 : RUN gem install sinatra
 ---> Running in 5e9d0065c1f7
. . .
Successfully installed rack-protection-1.5.3
Successfully installed sinatra-1.4.5
4 gems installed
 ---> 324104cde6ad
Removing intermediate container 5e9d0065c1f7
Successfully built 324104cde6ad

其中 -t 標記來添加 tag,指定新的鏡像的用戶信息。“.” 是 Dockerfile 所在的路徑(當前目錄),也可以替換為一個具體的 Dockerfile 的路徑。

可以看到 build 進程在執(zhí)行操作。它要做的第一件事情就是上傳這個 Dockerfile 內(nèi)容,因為所有的操作都要依據(jù) Dockerfile 來進行。然后,Dockfile 中的指令被一條一條的執(zhí)行。每一步都創(chuàng)建了一個新的容器,在容器中執(zhí)行指令并提交修改(就跟之前介紹過的 docker commit 一樣)。當所有的指令都執(zhí)行完畢之后,返回了最終的鏡像 id。所有的中間步驟所產(chǎn)生的容器都被刪除和清理了。

注意一個鏡像不能超過 127 層

此外,還可以利用 ADD 命令復(fù)制本地文件到鏡像;用 EXPOSE 命令來向外部開放端口;用 CMD 命令來描述容器啟動后運行的程序等。例如

?
1
2
3
4
5
6
# put my local web site in myApp folder to /var/www
ADD myApp /var/www
# expose httpd port
EXPOSE 80
# the command to run
CMD ["/usr/sbin/apachectl", "-D", "FOREGROUND"]

現(xiàn)在可以利用新創(chuàng)建的鏡像來啟動一個容器。

?
1
2
$ sudo docker run -t -i ouruser/sinatra:v2 /bin/bash
root@8196968dac35:/#

還可以用 docker tag 命令來修改鏡像的標簽。

?
1
2
3
4
5
6
$ sudo docker tag 5db5f8471261 ouruser/sinatra:devel
$ sudo docker images ouruser/sinatra
REPOSITORY     TAG   IMAGE ID   CREATED    VIRTUAL SIZE
ouruser/sinatra   latest 5db5f8471261 11 hours ago  446.7 MB
ouruser/sinatra   devel  5db5f8471261 11 hours ago  446.7 MB
ouruser/sinatra   v2   5db5f8471261 11 hours ago  446.7 MB

四、從本地文件系統(tǒng)導(dǎo)入

要從本地文件系統(tǒng)導(dǎo)入一個鏡像,可以使用 openvz(容器虛擬化的先鋒技術(shù))的模板來創(chuàng)建:openvz 的模板下載地址為templates 。

比如,先下載了一個 ubuntu-14.04 的鏡像,之后使用以下命令導(dǎo)入:

?
1
sudo cat ubuntu-14.04-x86_64-minimal.tar.gz |docker import - ubuntu:14.04

然后查看新導(dǎo)入的鏡像。

?
1
2
3
docker images
REPOSITORY     TAG         IMAGE ID      CREATED       VIRTUAL SIZE
ubuntu       14.04        05ac7c0b9383    17 seconds ago   215.5 MB

五、上傳鏡像

用戶可以通過 docker push 命令,把自己創(chuàng)建的鏡像上傳到倉庫中來共享。例如,用戶在 Docker Hub 上完成注冊后,可以推送自己的鏡像到倉庫中。

?
1
2
3
4
$ sudo docker push ouruser/sinatra
The push refers to a repository [ouruser/sinatra] (len: 1)
Sending image list
Pushing repository ouruser/sinatra (3 tags)

感謝閱讀,希望能幫助到大家,謝謝大家對本站 的支持!

原文鏈接:http://blog.csdn.net/ling811/article/details/53817123

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 久久99这里只有精品 | 精品国产一区二区三区免费 | 特黄特黄的视频 | 国产人妖在线 | 国产成人免费在线 | 国产色| 黄色一级毛片免费看 | 日本精品在线观看 | 国产精品久久久久无码av | 免费精品视频一区二区三区 | 亚洲免费视频一区 | 黄色大片网站 | 成人在线免费电影 | 色婷婷综合久久久中字幕精品久久 | 日韩精品三区 | 精品一区二区在线观看 | 国产成年人电影在线观看 | 国产一级纯肉体一级毛片 | 亚洲精品一 | 亚洲一区成人在线观看 | 在线观看国产精品一区 | 午夜在线视频 | 亚洲精品免费在线 | 亚洲一区视频在线 | 国产欧美日韩综合精品一区二区 | 中文字幕久久精品 | 久草免费在线视频 | 欧美精品在线一区二区三区 | 午夜影院久久 | 亚洲第一视频 | 欧美午夜一区 | 欧美天堂在线观看 | h视频在线免费观看 | 精品国产青草久久久久福利 | 精品国产一二三区 | 亚洲日日摸夜夜夜夜夜爽小说 | 亚洲婷婷一区二区三区 | 日韩精品一区二区三区av | ts人妖另类精品视频系列 | 亚洲高清久久 | av集中淫 |