使用Docker搭建http服務器一臺。
要求搭建完成後映射docker80端口。httpd頁面顯示本身的名字和IP地址html
Docker簡介
Docker 是一個開源的應用容器引擎,讓開發者能夠打包他們的應用以及依賴包到一個可移植的容器中,而後發佈到任何流行的 Linux 機器上,也能夠實現虛擬化。容器是徹底使用沙箱機制,相互之間不會有任何接口。Docker 使用客戶端-服務器 (C/S) 架構模式,使用遠程API來管理和建立Docker容器。Docker 容器經過 Docker 鏡像來建立。容器與鏡像的關係相似於面向對象編程中的對象與類。官網地址:http://www.docker.com/linux
docker所需環境準備web
系統要求CentOS 7.X 以上版本,內核至少3.10,64-bitdocker
建立docker的yum庫apache
安裝docker編程
啓動docker服務並設置開機自動啓動centos
驗證docker是否安裝成功瀏覽器
查看安裝後的docker版本bash
Dockfile是一種被Docker程序解釋的腳本,Dockerfile由一條一條的指令組成,每條指令對應Linux下面的一條命令。Docker程序將這些Dockerfile指令翻譯真正的Linux命令。Dockerfile有本身書寫格式和支持的命令,Docker程序解決這些命令間的依賴關係,相似於Makefile。Docker程序將讀取Dockerfile,根據指令生成定製的image。相比image這種黑盒子,Dockerfile這種顯而易見的腳本更容易被使用者接受,它明確的代表image是怎麼產生的。有了Dockerfile,當咱們須要定製本身額外的需求時,只需在Dockerfile上添加或者修改指令,從新生成image便可,省去了敲命令的麻煩。服務器
之因此提到這個是由於,在build鏡像的過程當中須要從服務器pull images,可是不幸的的Docker官網已經被牆,因此須要藉助國內第三方,我使用的阿里雲的。
安裝或升級Docker
您能夠經過阿里雲的鏡像倉庫下載: mirrors.aliyun.com/help/docker-engine
curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -
配置Docker加速器
您可使用以下的腳本將mirror的配置添加到docker daemon的啓動參數中。
系統要求 CentOS 7 以上,Docker 1.9 以上。
sudo sed -i "s|ExecStart=/usr/bin/docker daemon|ExecStart=/usr/bin/docker daemon --registry-mirror=https://g9d5s6dr.mirror.aliyuncs.com|g" sudo systemctl daemon-reload sudo service docker restart
Dockerfile文件內容以下:
run-httpd.sh腳本內容以下
注意:Dockerfile需藉助腳原本重啓httpd服務,而且最好放置於同一目錄
此時經過Dockerfile建立的鏡像已經建立成功,並沒有報錯
接下來運行容器
docker run -it -p 80:80 liuqiang/httpd:centos6
docker: Error response from daemon: failed to create endpoint clever_keller on network bridge: Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use.
啓動
瀏覽器測試確認下