欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于Docker的基礎(chǔ)概念分享

 更新時間:2017年01月03日 08:38:16   作者:xdays  
Docker是一個開源項目,誕生于2013年初,最初是dotCloud公司內(nèi)部的一個業(yè)余項目。它基于 Google公司推出的Go語言實現(xiàn)。項目后來加入了 Linux 基金會,遵從了 Apache 2.0 協(xié)議,項目代碼在 GitHub上進行維護。

簡介

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

特性

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

概念

cgroups

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

lxc

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

aufs

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

安裝

注意: docker要求內(nèi)核在3.8以上,所以建議的安裝系統(tǒng)為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鏡像,它是運行其他進程的基礎(chǔ)。

運行命令

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

提交改變

docker images
docker commit id user/name
docker push user/name

再次運行

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


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

Dockerfile

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

# Memcached
#
# VERSION    2.2
# use the ubuntu base image provided by dotCloud
FROM ubuntu
MAINTAINER Victor Coisne victor.coisne@dotcloud.com
# make sure the package repository is up to date
RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
RUN apt-get update
# install memcached
RUN apt-get install -y memcached
# Launch memcached when launching the container
ENTRYPOINT ["memcached"]
# run memcached as the daemon user
USER daemon
# expose memcached port
EXPOSE 11211

其中的一些指令解釋:

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

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

相關(guān)文章

  • 使用Docker+Nginx部署vue項目詳細圖文教程

    使用Docker+Nginx部署vue項目詳細圖文教程

    這篇文章主要給大家介紹了關(guān)于使用Docker+Nginx部署vue項目的相關(guān)資料,文中通過圖文介紹的非常詳細,對大家學(xué)習(xí)或者工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • Docker部署kafka遇到的問題及解決

    Docker部署kafka遇到的問題及解決

    在啟動容器后,狀態(tài)顯示為“Exited”,日志顯示連接ZooKeeper超時,原因是端口不通,通過配置安全組相關(guān)端口后重新啟動容器,查看日志顯示“started”,說明容器啟動成功
    2024-09-09
  • docker倉庫登錄及配置insecure-registries的方法

    docker倉庫登錄及配置insecure-registries的方法

    這篇文章主要介紹了docker倉庫登錄配置insecure-registries的方法,docker客戶端如果配置中添加了insecure-registary配置,就不需要在docker 客戶端配置上對應(yīng)證書,如果不配置要在/etc/docker/certs.d/目錄中添加對應(yīng)證書才能正常登錄,感興趣的朋友跟隨小編一起看看吧
    2022-07-07
  • Docker配置MySql環(huán)境的實現(xiàn)步驟

    Docker配置MySql環(huán)境的實現(xiàn)步驟

    通過使用Docker,開發(fā)人員可以更容易地構(gòu)建、測試和交付應(yīng)用程序,同時減少了環(huán)境配置和依賴項管理的復(fù)雜性,本文主要介紹了Docker配置MySql環(huán)境的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,感興趣的可以了解一下
    2024-02-02
  • docker部署Macvlan實現(xiàn)跨主機網(wǎng)絡(luò)通信的實現(xiàn)

    docker部署Macvlan實現(xiàn)跨主機網(wǎng)絡(luò)通信的實現(xiàn)

    這篇文章主要介紹了docker部署Macvlan實現(xiàn)跨主機網(wǎng)絡(luò)通信的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 如何使用?docker?搭建一個?mysql?服務(wù)

    如何使用?docker?搭建一個?mysql?服務(wù)

    這篇文章主要介紹了如何使用?docker?搭建一個mysql服務(wù),文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • 詳解使用export/import導(dǎo)出和導(dǎo)入docker容器

    詳解使用export/import導(dǎo)出和導(dǎo)入docker容器

    本篇文章主要介紹了詳解使用export/import導(dǎo)出和導(dǎo)入docker容器,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • docker-compose安裝db2數(shù)據(jù)庫操作

    docker-compose安裝db2數(shù)據(jù)庫操作

    這篇文章主要介紹了docker-compose安裝db2數(shù)據(jù)庫操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Docker啟動容器報錯:Ports are not available的解決方案

    Docker啟動容器報錯:Ports are not available的解決方案

    這篇文章主要介紹了Docker啟動容器報錯:Ports are not available的解決方案,Docker 將容器程序的端口號映射到宿主機的端口號,是一個 NAT 過程,這個過程可能會因為與 Windows NAT 服務(wù)沖突而失效,文中有詳細的解決方案,需要的朋友可以參考下
    2024-03-03
  • Docker安裝LNMP環(huán)境的詳細過程(可部署TP項目)

    Docker安裝LNMP環(huán)境的詳細過程(可部署TP項目)

    這篇文章主要介紹了Docker安裝LNMP環(huán)境的詳細過程(可部署TP項目),主要包括安裝docker,安裝nginx,安裝php的命令詳解,需要的朋友可以參考下
    2022-06-06

最新評論