成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Docker實戰(zhàn)之Quick Start

alaege / 701人閱讀

摘要:如果使用操作系統(tǒng)自帶包安裝,目前安裝的版本是比較舊的。之前版本如果是較低版本的系統(tǒng),需要先更新內(nèi)核。然后重復(fù)上面的步驟即可。

Quick Start Installation Ubuntu

通過系統(tǒng)自帶包安裝

Ubuntu 14.04 版本系統(tǒng)中已經(jīng)自帶了 Docker 包,可以直接安裝。

$ sudo apt-get update
$ sudo apt-get install -y docker.io
$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
$ sudo sed -i "$acomplete -F _docker docker" /etc/bash_completion.d/docker.io

如果使用操作系統(tǒng)自帶包安裝 Docker,目前安裝的版本是比較舊的 0.9.1。 要安裝更新的版本,可以通過使用 Docker 源的方式。

通過Docker源安裝最新版本

要安裝最新的 Docker 版本,首先需要安裝 apt-transport-https 支持,之后通過添加源來安裝。

$ sudo apt-get install apt-transport-https
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
$ sudo bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
$ sudo apt-get update
$ sudo apt-get install lxc-docker

14.04 之前版本

如果是較低版本的 Ubuntu 系統(tǒng),需要先更新內(nèi)核。

$ sudo apt-get update
$ sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring
$ sudo reboot

然后重復(fù)上面的步驟即可。

安裝之后啟動 Docker 服務(wù)。

$ sudo service docker start
CentOS

Docker 支持 CentOS6 及以后的版本。

CentOS6

對于 CentOS6,可以使用?EPEL?庫安裝 Docker,命令如下

$ sudo yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
$ sudo yum install docker-io

CentOS7

CentOS7 系統(tǒng)?CentOS-Extras?庫中已帶 Docker,可以直接安裝:

$ sudo yum install docker

安裝之后啟動 Docker 服務(wù),并讓它隨系統(tǒng)啟動自動加載。

$ sudo service docker start
$ sudo chkconfig docker on
Docker Toolbox(Mac & Windows)

docker-toolbox

早期在Windows或者M(jìn)AC環(huán)境下使用Docker主要利用的是Boot2Docker這個命令行工具,而Toolbox可以安裝你在開發(fā)中運行Docker時所需要的一切:Docker客戶端、Compose(僅Mac需要)、Kitematic、Machine以及VirtualBox。Toolbox使用Machine和VirtualBox在虛擬機中創(chuàng)建了一個引擎來運行容器。在該虛擬機上,你可以使用Docker客戶端、Compose以及Kitematic來運行容器。而Toolbox本身已經(jīng)可以取代了Boot2Docker的作用。

Docker的Toolbox主要集成了如下幾個不同的工具的集合:

Docker Client?docker?binary

Docker Machine?docker-machine?binary

Docker Compose?docker-compose?binary

Kitematic – Desktop GUI for Docker

Docker Quickstart Terminal app

以Mac系統(tǒng)為例,使用Docker Toolbox安裝Docker環(huán)境與Linux系統(tǒng)的區(qū)別在于,在標(biāo)準(zhǔn)的Linux系統(tǒng)上的安裝中,Docker客戶端、Docker守護(hù)進(jìn)程以及所有的容器都是直接運行在本地的:

而在OS X或者Windows系統(tǒng)的安裝中,Docker的相關(guān)的程序是運行在一個內(nèi)置的小型的Linux虛擬機中的。

在這里可以下載Toolbox的安裝程序,雙擊打開按照步驟提示安裝好之后,即可以進(jìn)行下一步,首先在Applications文件夾或者Launchpad中打開Docker QuickStart Terminal,該程序會直接打開一個終端控制臺,并且創(chuàng)建或者連接到一個叫default的虛擬機并且將控制臺登錄到該虛擬機中。當(dāng)然,用戶也可以用docker-machine命令來手動創(chuàng)建或者登錄到虛擬機中:

From your shell:從命令行創(chuàng)建

創(chuàng)建一個新的Docker虛擬機

$ docker-machine create --driver virtualbox default
Creating VirtualBox VM...
Creating SSH key...
Starting VirtualBox VM...
Starting VM...
To see how to connect Docker to this machine, run: docker-machine env default

注意,該虛擬機相關(guān)的配置文件存放在~/.docker/machine/machines/default目錄下。

列舉所有可用的機器

$ docker-machine ls
NAME                ACTIVE   DRIVER       STATE     URL                         SWARM
default             *        virtualbox   Running   tcp://192.168.99.101:2376  

獲取環(huán)境配置

$ docker-machine env default
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.101:2376"
export DOCKER_CERT_PATH="/Users/mary/.docker/machine/machines/default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell: 
# eval "$(docker-machine env default)"

連接到該虛擬機

$ eval "$(docker-machine env default)"
Proxy & Mirror Proxy For boot2docker

如果是使用boot2docker配置的Docker的運行環(huán)境,那么配置文件并沒有放置在Windows或者M(jìn)AC系統(tǒng)種,而是附著在了小的Linux虛擬機的內(nèi)核中。首先我們需要在boot2docker的命令行中進(jìn)入到VM的設(shè)置:

Creating Machine default...
Creating VirtualBox VM...
Creating SSH key...
Starting VirtualBox VM...
Starting VM...
To see how to connect Docker to this machine, run: docker-machine env default
Starting machine default...
Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
Setting environment variables for machine default...
 
. . .
 
                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
                          __/
              \____\_______/
 
 
docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com

現(xiàn)在可以修改 /var/lib/boot2docker/profile 這個文件來設(shè)置代理:

docker@boot2docker:~$ sudo vi /var/lib/boot2docker/profile 

Tinycore 需要按照如下格式進(jìn)行配置: protocol://ip:port

安全起見我同時設(shè)置了 HTTP 與 HTTPS.

export HTTP_PROXY=http://your.proxy.name:8080
export HTTPS_PROXY=http://your.proxy.name:8080

現(xiàn)在你可以重啟整個服務(wù)以及Docker容器:

docker@boot2docker:~$ sudo /etc/init.d/docker restart
docker@boot2docker:~$ exit
Connection to localhost closed.

接下來就可以順利的運行鏡像了:

bash-3.2$ docker search ubuntu
NAME                                             DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
ubuntu                                           Official Ubuntu base image                      356                  
stackbrew/ubuntu                                 Official Ubuntu base image                      39                   
crashsystems/gitlab-docker                       A trusted, regularly updated build of GitL...

這個改變即使以后的虛擬機重啟重置也都一直會被保留,因此只需要被設(shè)置一次。

Docker Hub Mirror

DaoCloud提供Docker Hub Mirror服務(wù)。用戶可以進(jìn)入Docker Hub Mirror注冊入口注冊。在進(jìn)入控制臺頁面后直接點擊 啟動你的加速器后,您即可得到一個Mirror的地址,將該地址配置在Docker Daemon的啟動腳本中,重啟Docker Daemon即可使得Docker Hub Mirror配置生效。

Ubuntu

安裝或升級Docker

Docker 1.3.2版本以上才支持Docker Hub Mirror機制,如果您還沒有安裝Docker或者版本過低,請安裝或升級版本。

配置Docker Hub Mirror

sudo?echo?"DOCKER_OPTS="$DOCKER_OPTS?--registry-mirror=http://xxx.m.daocloud.io""?>>?/etc/default/docker?service?docker?restart?

請將xxx替換為您在 DaoCloud 上注冊后,為您專屬生成的Mirror地址鏈接名。 該腳本可以將 --registry-mirror 加入到您的Docker配置文件 /etc/defaults/docker中。

盡情享受Docker Hub Mirror

Docker Hub Mirror使用不需要任何附件操作,就像這樣下載官方Ubuntu鏡像

docker?pull?ubuntu?

CentOS

安裝或升級Docker

Docker 1.3.2版本以上才支持Docker Hub Mirror機制,如果您還沒有安裝Docker或者版本過低,請安裝或升級版本。

配置Docker Hub Mirror

sudo?sed?-i?"s|OPTIONS=|OPTIONS=--registry-mirror=http://xxx.m.daocloud.io?|g"?/etc/sysconfig/docker?service?docker?restart?

請將xxx替換為您在 DaoCloud 上注冊后,為您專屬生成的Mirror地址鏈接名。

該腳本可以將 --registry-mirror 加入到您的Docker配置文件/etc/defaults/docker中。

盡情享受Docker Hub Mirror

Docker Hub Mirror使用不需要任何附件操作,就像這樣下載官方Ubuntu鏡像

docker?pull?ubuntu?

MAC

安裝或升級MAC版本下的Boot2Docker

Docker 1.3.2版本以上才支持Docker Hub Mirror機制,如果您還沒有安裝Docker或者版本過低,請安裝或升級版本。

配置Docker Hub Mirror

請確認(rèn)你的Boot2Docker已經(jīng)啟動,并執(zhí)行

boot2docker?ssh?sudo?su?echo?"EXTRA_ARGS="--registry-mirror=http://xxx.m.daocloud.io""?>>?/var/lib/boot2docker/profile?&&?exit?exit?boot2docker?restart?

請將xxx替換為您在 DaoCloud 上注冊后,為您專屬生成的Mirror地址鏈接名。

盡情享受Docker Hub Mirror

Docker Hub Mirror使用不需要任何附件操作,就像這樣下載官方Ubuntu鏡像

docker?pull?ubuntu?

Windows

安裝或升級MAC版本下的Boot2Docker

Docker 1.3.2版本以上才支持Docker Hub Mirror機制,如果您還沒有安裝Docker或者版本過低,請安裝或升級版本。

配置Docker Hub Mirror

進(jìn)入Boot2Docker Start Shell,并執(zhí)行

sudo?su?echo?"EXTRA_ARGS="--registry-mirror=http://xxx.m.daocloud.io""?>>?/var/lib/boot2docker/profile?exit?#?重新啟動Boot2Docker?

請將xxx替換為您在 DaoCloud 上注冊后,為您專屬生成的Mirror地址鏈接名

盡情享受Docker Hub Mirror

Docker Hub Mirror使用不需要任何附件操作,就像這樣下載官方Ubuntu鏡像

docker?pull?ubuntu?
Hello World

在Docker的學(xué)習(xí)中我們依舊可以借鑒經(jīng)典的HelloWorld,直接運行docker run hello-world即可,不過需要注意的是,由于總所周知的原因,國內(nèi)往往無法順利的下載鏡像,如果遇到類似的網(wǎng)絡(luò)的錯誤可以參考上文中的代理或者鏡像的設(shè)置。

$ docker run hello-world
Unable to find image "hello-world:latest" locally
511136ea3c5a: Pull complete
31cbccb51277: Pull complete
e45a5af57b00: Pull complete
hello-world:latest: The image you are pulling has been verified.
Important: image verification is a tech preview feature and should not be
relied on to provide security.
Status: Downloaded newer image for hello-world:latest
Hello from Docker.
This message shows that your installation appears to be working correctly.


To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
   (Assuming it was not already locally available.)
3. The Docker daemon created a new container from that image which runs the
   executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
   to your terminal.


To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash


For more examples and ideas, visit:
http://docs.docker.com/userguide/
Run Commands(運行命令)

你的Container會在你結(jié)束命令之后自動退出,使用以下的命令選項可以將容器保持在激活狀態(tài):

-i?即使在沒有附著的情況下依然保持STDIN處于開啟

-t?分配一個偽TTY控制臺

所以run命令就變成了:

docker run -it -d shykes/pybuilder bin/bash

如果希望能夠附著到一個已經(jīng)存在的容器中,則利用exec命令:

docker exec -it CONTAINER_ID /bin/bash
Docker Commands

docker-cheat-sheet

本章主要對于常見的Docker命令行命令進(jìn)行詳細(xì)介紹。

LifeCycle Containers

docker create?會創(chuàng)建一個容器但是不會立刻啟動

docker run?會創(chuàng)建并且啟動某個容器

如果只是希望有一個暫時性的容器,可以使用?docker run --rm?將會在容器運行完畢之后刪除該容器。

如果希望在打開某個容器之后能夠與其進(jìn)行交互,?docker run -t -i ?會創(chuàng)建一個TTY控制臺。

docker stop?會關(guān)閉某個容器

docker start?會啟動某個容器

docker restart?會重新啟動某個容器

docker rm?會刪除某個容器

如果希望能夠移除所有與該容器相關(guān)的Volume,可以使用-v參數(shù):?docker rm -v.

docker kill?會發(fā)送SIGKILL信號量到某個容器

docker attach?會附著到某個正在運行的容器

docker wait?會阻塞直到某個容器關(guān)閉

Images

docker images?會展示所有的鏡像

docker import?會從原始碼中創(chuàng)建鏡像

docker build?會從某個Dockfile中創(chuàng)建鏡像

docker commit?會從某個Container中創(chuàng)建鏡像

docker rmi?會移除某個鏡像

docker load?以STDIN的方式從某個tar包中加載鏡像

docker save?以STDOUT的方式將鏡像存入到某個tar包中

Info Containers

docker ps?會列舉出所有正在運行的容器

docker ps -a?會展示出所有正在運行的和已經(jīng)停止的容器

docker logs?從某個容器中獲取log日志

docker inspect?檢測關(guān)于某個容器的詳細(xì)信息

docker events?從某個容器中獲取所有的事件

docker port?獲取某個容器的全部的開放端口

docker top?展示某個容器中運行的全部的進(jìn)程

docker stats?展示某個容器中的資源的使用情況的統(tǒng)計信息

docker diff?展示容器中文件的變化情況

Images

docker history?展示鏡像的全部歷史信息

docker tag?為某個容器設(shè)置標(biāo)簽

Import&Export

docker cp?在容器與本地文件系統(tǒng)之間進(jìn)行文件復(fù)制

docker export?將某個容器中的文件系統(tǒng)的內(nèi)容輸出到某個tar文件中

Executing Commands

docker exec?在容器中運行某個命令

如果需要在某個名字為foo的容器中運行交互命令,可以使用:

docker exec -it foo /bin/bash.

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/26481.html

相關(guān)文章

  • Maven實戰(zhàn)Quick Start

    摘要:在之前,十個項目可能有十種構(gòu)建方式,但通過,所有項目的構(gòu)建命令都是簡單一致的。有利于促進(jìn)項目團(tuán)隊的標(biāo)準(zhǔn)化。手工勞動往往意味著低效,意味著容易出錯。這在很大程度上消除了重復(fù)。默認(rèn)情況下,該文件夾下放置了本地倉庫。學(xué)習(xí)實戰(zhàn)許曉斌著 Introduction Maven是一個異常強大的構(gòu)建工具,能夠幫我們自動化構(gòu)建過程,從清理、編譯、測試到生成報告,再到打包和部署。通過Maven,我們只需要...

    Yi_Zhi_Yu 評論0 收藏0
  • Docker實戰(zhàn)入門】Dockerfile詳細(xì)分析(5):ENTRYPOINT和CMD命令的區(qū)別

    摘要:用法在當(dāng)中只有最后一條生效,其他都不生效第一種寫法類似數(shù)組形式,推薦使用。第二章方法執(zhí)行命令啟動的進(jìn)程,該進(jìn)程的為執(zhí)行完這個的。命令覆蓋掉了中的命令,直接進(jìn)入到了中。刪除鏡像前,先停止。 ENTRYPOINT用法showImg(https://segmentfault.com/img/bVXNu5?w=702&h=322); entrypoint在dockerfile當(dāng)中只有最后一條生...

    JerryWangSAP 評論0 收藏0
  • Docker實戰(zhàn)入門】Dockerfile詳細(xì)分析:構(gòu)建docker鏡像(3)DB鏡像

    摘要:腳本運行函數(shù)執(zhí)行完后,刪除啟動以上是制作鏡像的配置文件。鏡像必須先鏡像,才能鏡像。查看容器狀態(tài)進(jìn)入到容器中查看數(shù)據(jù)庫只要數(shù)據(jù)庫文件目錄存在,可以隨意刪除重建,恢復(fù)很快。 構(gòu)建DB Docker鏡像 mysql的代碼文件 [root@Optimus /]# cd docker-training/ [root@Optimus docker-training]# ls centos7 my...

    lingdududu 評論0 收藏0
  • 運用代碼管理基礎(chǔ)架構(gòu)鏡像利器(一)

    摘要:第二十期啟迪云高級交付經(jīng)理董樂首先我們基礎(chǔ)架構(gòu)的組成主要是計算存儲和網(wǎng)絡(luò)。不會取代像或這樣的配置管理。事實上,在創(chuàng)建鏡像時,可以使用或等工具在鏡像上安裝軟件。第二十期 啟迪云高級交付經(jīng)理 ?董樂 首先我們基礎(chǔ)架構(gòu)的組成主要是計算、存儲和網(wǎng)絡(luò)。在我們以往的模式中主要使用的是虛擬化技術(shù)。 無論哪種虛擬化技術(shù)在實際生產(chǎn)環(huán)境中主要都是通過模板來提高交付效率,模板主要由操作系統(tǒng)和應(yīng)用組成。...

    URLOS 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<