国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

關于Docker的基礎概念分享

2024-09-01 13:49:59
字體:
來源:轉載
供稿:網友

簡介

如官方文檔所說,docker是一個自動將應用打包成輕量可移植自包涵的容器的引擎。開發者構建的應用可以一次構建全平臺運行,包括本地開發機,生產環境,虛擬機和云等。目前處于開發階段,不可用于生產環境。在你啟動一條命令時docker會調用lcx等其他一個組建為這條命令構建一個container,包含了進程運行的所有資源。但是官方文檔以說明,docker處于開發階段目前還不能用于生產環境。

特性

Go語言編寫
基于lxc的進程級隔離,而lxc基于cgroup,輕量級
通過cgroup做到文件系統,網絡和資源的隔離
使用aufs文件系統存儲,寫時復制,相同數據只保存一份,節省空間
源機制,可相互分享,搜索等

概念

cgroups

cgroups全稱control groups,是linux內核提供的一種限制、記錄和隔離進程組所使用物理資源的一種機制。在2.6.24之后的內核中都已經支持cgroups。詳細的介紹請參考cgroups詳解。

lxc

lxc全稱是linux container,是基于cgroups和chroot等內核特性的一組工具,用于構建虛擬環境。通過一系列的命令行工具可以創建,修改,刪除虛擬環境。具體用法可參考ubuntu官方文檔。

aufs

aufs全稱是advance(another) union file system,是一種聯合文件系統。這種文件系統最重要的一個特性就是有一個層的概念和復制時拷貝,可以做到當文件系統改變時只影響其中一層,其他層保持不變。舉個例子,整個文件系統就像由一層一層的玻璃組成的,你從上往下看能看到所有的圖案(如果上下層的玻璃完全重合則只能看見上層的玻璃對應的圖案),而當你需要新增或者修改圖案時就只能在最上層的玻璃上操作。具體的一些操作例子可參考geekstuff的aufs演示

安裝

注意: docker要求內核在3.8以上,所以建議的安裝系統為ubuntu。

ubuntu

curl -s https://get.docker.io/ubuntu/ | sudo sh

centos

安裝epel rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

安裝docker yum install -y docker-io

啟動 service docker start chkconfig docker on

使用

命令行

獲取base image

docker pull ubuntu

這條命令會從docker index上獲取ubuntu鏡像,它是運行其他進程的基礎。

運行命令

docker run -i -t ubuntu yum install -y vim

提交改變

docker imagesdocker commit id user/namedocker push user/name

再次運行

docker pull user/namedocker run -i -t image vim

注意: 這里的再次運行是指你所構建的環境可以再其他任何平臺上運行起來,不需要額外的配置,沒有依賴。

Dockerfile

dockerfile通過一些指令來描述了一個image的方方面面。

# Memcached## VERSION    2.2# use the ubuntu base image provided by dotCloudFROM ubuntuMAINTAINER Victor Coisne victor.coisne@dotcloud.com# make sure the package repository is up to dateRUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.listRUN apt-get update# install memcachedRUN apt-get install -y memcached# Launch memcached when launching the containerENTRYPOINT ["memcached"]# run memcached as the daemon userUSER daemon# expose memcached portEXPOSE 11211

其中的一些指令解釋:

FROM指定此image的base image
MAINTAINER指定image的維護者
RUN指定在當前的image下運行的命令,相當于docker run image command
ENTRYPOINT指定在運行image時觸發的命令
USER指定運行出發命令的用戶名
EXPOSE指定對外提供的端口號

以上就是本文的全部內容了,希望對大家了解docker能夠有所幫助


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西平县| 米林县| 手游| 南岸区| 安顺市| 巴林右旗| 古浪县| 玉门市| 西峡县| 威宁| 大关县| 宁晋县| 南乐县| 汉川市| 宁津县| 昆山市| 安国市| 南溪县| 林甸县| 湘西| 沙洋县| 塘沽区| 安远县| 思南县| 新河县| 三亚市| 金平| 抚松县| 平顶山市| 台中市| 南涧| 武陟县| 漠河县| 台中县| 泽库县| 凤山县| 麟游县| 城步| 尉犁县| 丰县| 双鸭山市|