docker 筆記(基本概念、快速運行、自定義鏡像)

一、docker
docker是一個打包應用的工具
很是強大,能把操做系統也打在包裏,進行無差異部署和運行。
因此docker也被認爲是創建在操做系統上的虛擬機。
 
二、基本概念
鏡像(image):
相似操做系統的鏡像,包括一個完整可運行的系統,操做系統、基礎組件、應用程序均可以打包在一個鏡像中。
容器(container):
容器是某一個docker鏡像的執行實例,能夠啓動、關閉、刪除,能夠理解成正一個linux系統,同一臺機器上的多個container互相隔離。
 
三、簡單使用
#安裝docker(centos6.5以上)
yum install -y epel-release
yum update -y device-mapper
yum erase -y docker
yum install -y docker-io
service docker status
 
#從官方倉庫中下載image
docker pull centos
docker pull ubuntu
 
#查看本地可用的image
docker images
 
#啓動一個centos的dokcer容器,直接進入bash
docker  run  -it  centos  bash 
 
#後臺啓動一個centos的dokcer容器
docke r run  -d  -it  centos
 
#後臺啓動一個centos的dokcer容器,監聽80端口,映射到容器裏的8080端口
docke r run -p 80:8080  -d  -it  centos
 
#查看正在運行的docker容器
docker ps
 
#查看全部docker容器
docker ps -a
 
#在運行狀態的容器裏啓動一個bash(進入正在運行的容器)
docker  exec  -it  $container_id  bash
 
#啓動/關閉/重啓容器
docker  start/stop/restart  $container_id
 
#刪除容器
docker  rm  $container_id
 
四、建立自定義鏡像,打包應用
mkdir test_image
cd  test_image
#建立Dockerfile
vi  Dockerfile
# 自定義image
#繼承一個已有的鏡像,這裏用cetos做爲基礎
FROM centos
MAINTAINER Luo <luochongyang@yazuo.com>

#安裝一些基礎組件
RUN yum install -y java-1.7.0-openjdk

#把應用程序放入鏡像(app1.tar.gz 事先放在同級目錄下
RUN mkdir /yazuo_apps/
ADD app1.tar.gz /yazuo_apps/
 
#打包鏡像,鏡像名爲app1,版本爲1.0
docker build -t app1:1.0 .
 
#啓動鏡像,並啓動app1,把本機的8080端口映射到容器的8080端口
docker run -d -p 8080:8080 -it /yazuo_apps/app1/start.sh
 
#導出鏡像(直接經過文件來分發鏡像到其餘機器)
docker  save  -o app1-1.0.image  app1:1.0
相關文章
相關標籤/搜索