docker 在ubuntu16/centos6.9中的安裝及常用操作
1. 鏡像-容器
2. ubuntu16安裝
更新ubuntu的apt源索引 ‘sudo apt-get update‘
-
安裝包允許apt通過HTTPS使用倉(cāng)庫(kù)
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
添加Docker官方GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -設(shè)置Docker穩(wěn)定版?zhèn)}庫(kù)
sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"添加倉(cāng)庫(kù)后,更新apt源索引
sudo apt-get update安裝最新版Docker CE(社區(qū)版)
sudo apt-get install docker-ce檢查Docker CE是否安裝正確
sudo docker run hello-world更改權(quán)限,不用每次都寫sudo
sudo usermod -a -G docker $USER?-
2.1. ubuntu下操作docker
# 啟動(dòng)docker sudo service docker start # 停止docker sudo service docker stop # 重啟docker sudo service docker restart # 列出鏡像 docker image ls # 拉取鏡像 docker image pull library/hello-world docker image pull hello-world # 刪除鏡像 docker image rm 鏡像名或鏡像id # 創(chuàng)建容器 docker run [option] 鏡像名 [向啟動(dòng)容器中傳入的命令] # 創(chuàng)建交互式容器 docker run -it --name=myubuntu ubuntu /bin/bash ?!?chuàng)建守護(hù)式容器 docker run -dit --name=myubuntu2 ubuntu ?!∵M(jìn)入已運(yùn)行的容器 docker exec -it 容器名或容器id 進(jìn)入后執(zhí)行的第一個(gè)命令 docker exec -it myubuntu2 /bin/bash #查看容器 docker container ls #列出本機(jī)正在運(yùn)行的容器 docker container ls --all?。!×谐霰緳C(jī)所有容器,包括已經(jīng)終止運(yùn)行的 # 停止容器 docker container stop ubuntu2 # 停止一個(gè)已經(jīng)在運(yùn)行的容器 docker container stop 容器名或容器id # 啟動(dòng)一個(gè)已經(jīng)停止的容器 docker container start 容器名或容器id # kill掉一個(gè)已經(jīng)在運(yùn)行的容器 docker container kill 容器名或容器id # 刪除容器 docker container rm 容器名或容器id -
2.2. 創(chuàng)建容器參數(shù)
- 常用可選參數(shù)說明:
- -i 表示以“交互模式”運(yùn)行容器
- -t 表示容器啟動(dòng)后會(huì)進(jìn)入其命令行。加入這兩個(gè)參數(shù)后,容器創(chuàng)建就能登錄進(jìn)去。即 分配一個(gè)偽終端。
- --name 為創(chuàng)建的容器命名
- -v 表示目錄映射關(guān)系(前者是宿主機(jī)目錄,后者是映射到宿主機(jī)上的目錄,即 宿主機(jī)目錄:容器中目錄),可以使 用多個(gè)-v 做多個(gè)目錄或文件映射。注意:最好做目錄映射,在宿主機(jī)上做修改,然后 共享到容器上。
- -d 在run后面加上-d參數(shù),則會(huì)創(chuàng)建一個(gè)守護(hù)式容器在后臺(tái)運(yùn)行(這樣創(chuàng)建容器后不 會(huì)自動(dòng)登錄容器,如果只加-i -t 兩個(gè)參數(shù),創(chuàng)建后就會(huì)自動(dòng)進(jìn)去容器)。
- -p 表示端口映射,前者是宿主機(jī)端口,后者是容器內(nèi)的映射端口??梢允褂枚鄠€(gè)-p 做多個(gè)端口映射
- -e 為容器設(shè)置環(huán)境變量
- --network=host 表示將主機(jī)的網(wǎng)絡(luò)環(huán)境映射到容器中,容器的網(wǎng)絡(luò)與主機(jī)相同
- 常用可選參數(shù)說明:
2.3. 將容器保存為鏡像
docker commit 容器名 鏡像名-
2.4. 鏡像備份與遷移
save命令將鏡像打包成文件 docker save -o 保存的文件名 鏡像名 docker save -o ./ubuntu.tar ubuntu -
2.5. 本地鏡像加載
可以通過load方法,將鏡像加載到本地 docker load -i ./ubuntu.tar ``` ? 2.6. docker image list
docker image ls2.7. 刪除容器
docker rm container_id
3. centos6.9上安裝docker
-
3.1更新centos源(參考http://m.itdecent.cn/p/1a765617be7d)
- 查看當(dāng)前系統(tǒng)Docker信息
docker info
- 查看當(dāng)前系統(tǒng)Docker信息
- 3.2 安裝docker
yum install -y epel-release
yum search docker
yum install -y docker-io.x86_64
- 3.3 docker鏡像操作
# 啟動(dòng)docker
sudo service docker start
#停止docker
sudo service docker stop
# 重啟docker
sudo service docker restart
#拉取docker鏡像
docker pull image_name
docker pull centos:latest
#拉取docker鏡像指定版本
docker pull centos:6.9
#查找Docker Hub上的nginx鏡像
docker search nginx
#刪除鏡像
docker rmi image_id/iamge_name
#查看宿主機(jī)上的鏡像,Docker鏡像保存在/var/lib/docker目錄下:
docker images
- 3.4 docker容器操作
#創(chuàng)建容器
docker run -i -t <imageID> /bin/bash(沒有/bin/bash會(huì)立刻退出)
#守護(hù)進(jìn)程創(chuàng)建容器,容器會(huì)在后臺(tái)運(yùn)行
docker run -itd --name=install_py2.7 657531b0552b /bin/bash
# 進(jìn)入后臺(tái)正在運(yùn)行的容器
docker attach container_name/container_id
#啟動(dòng)容器,并掛載本地目錄文件(-v),冒號(hào)前為本地目錄,冒號(hào)后為容器目錄
docker run -it -v /home/work/Downloads:/home image_name/image_id /bin/bash
#多窗口啟動(dòng)容器, 分配一個(gè)偽終端.
docker exec -it container_id /bin/bash
#查看當(dāng)前有哪些容器正在運(yùn)行
docker ps
# 查看所有容器
docker ps -a
# 重命名
docker rename old容器名 new容器名
# 退出容器 exit
# 啟動(dòng)、停止、重啟容器命令:
docker start container_name/container_id
docker stop container_name/container_id
docker restart container_name/container_id
# 刪除容器的命令:
docker rm container_name/container_id
# 刪除所有停止的容器:
docker rm $(docker ps -a -q)
- 3.5 docker容器備份與恢復(fù)
#備份
docker commit -p 30b8f18f20b4 container-backup
docker save -o ~/container-backup.tar container-backup
#恢復(fù)到鏡像中
docker load -i ~/container-backup.tar
- docker是最小化配置的鏡像,以centos為例,安裝
yum install -y net-tools
yum install -y wget
以便后續(xù)操作