第一章節(jié): DOCKER的安裝與使用
1番刊、Docker 要求 CentOS 系統(tǒng)的內(nèi)核版本高于 3.10 ,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker 影锈。
通過?uname -r?命令查看你當(dāng)前的內(nèi)核版本:
[root@runoob~]# uname -r
2芹务、安裝docker
[root@runoob~]# yum -y install docker
docker已分為社區(qū)版企業(yè)版
更改yum源:將https://pan.baidu.com/s/1t3zzVwyi2hxMWdq5AeLIyA文件覆蓋到
/etc/yum.repos.d目錄下
sudo yum install docker-ce
container-selinux >= 2.9?
這個報錯是container-selinux版本低或者是沒安裝的原因
yum 安裝container-selinux 一般的yum源又找不到這個包
需要安裝epel源 才能yum安裝container-selinux
然后在安裝docker-ce就可以了。
wget?-O?/etc/yum.repos.d/CentOS-Base.repo?http://mirrors.aliyun.com/repo/Centos-7.repo ?
?yum install epel-release? ?#阿里云上的epel源
然后yum install?container-selinux
3鸭廷、啟動 Docker 后臺服務(wù)
[root@runoob~]# service docker start
4锄禽、測試運(yùn)行 hello-world
[root@runoob~]#docker run hello-world
5、修改鏡像倉庫地址
vim /etc/docker/daemon.json ?修改端口鏡像倉庫地址
{"registry-mirrors": ["http://ef017c13.m.daocloud.io/"],"insecure-registries": ["11.4.76.193"] }
重啟:
systemctl daemon-reload
systemctl restart docker
6靴姿、啟動容器
runoob@runoob:~$dockerrun-dubuntu:15.10/bin/sh-c"while true; do echo hello world; sleep 1; done"
2b1b7a428627c51ab8810d541d759f072b4fc75487eed05812646b8534a2fe63
7沃但、查看正在運(yùn)行的容器
runoob@runoob:~$dockerps
CONTAINER ID:容器ID
NAMES:自動分配的容器名稱
8、查看容器日志
runoob@runoob:~$dockerlogscontainer_name
9佛吓、停止容器
runoob@runoob:~$dockerstopcontainer_name
9宵晚、查看本地鏡像
runoob@runoob:~$dockerimages
10、拉取鏡像pull
runoob@runoob:~$dockerpullregistry.cn-hangzhou.aliyuncs.com/chainone/centos7-jdk8
11维雇、刪除鏡像
runoob@runoob:~$dockerrmi-fimage_id
?
dockerrm$(dockerps-a-q)
12淤刃、 進(jìn)入容器
docker?attach?44fc0f0582d9??
sudo?docker?exec?-it?775c7c9ee1e1?/bin/sh
13、使用特權(quán)privileged
普通模式下吱型,root只是一個普通用戶逸贾,沒有修改系統(tǒng)配置的權(quán)限,如果要禁用THP之類的設(shè)置需要使用特權(quán)模式津滞。-t -i開啟終端輸入铝侵;-d 在后臺運(yùn)行
docker run --privileged -t -i 11.4.76.193/redis/redis:pro /bin/sh
當(dāng)利用?docker run?來創(chuàng)建容器時,Docker 在后臺運(yùn)行的標(biāo)準(zhǔn)操作包括:
檢查本地是否存在指定的鏡像触徐,不存在就從公有倉庫下載
利用鏡像創(chuàng)建并啟動一個容器
分配一個文件系統(tǒng)咪鲜,并在只讀的鏡像層外面掛載一層可讀寫層
從宿主主機(jī)配置的網(wǎng)橋接口中橋接一個虛擬接口到容器中去
從地址池配置一個 ip 地址給容器
執(zhí)行用戶指定的應(yīng)用程序
執(zhí)行完畢后容器被終止
14、獲取docker輸入信息
sudo docker logs insane_babbage
#第二章:使用dockerfile打包鏡像
1撞鹉、winscp工具上傳 spring boot 打包的jar文件
2疟丙、編輯dockerfile
3、??打包鏡像:docker build -f Dockerfile_name -t 11.4.76.193/redis/ .
docker?build -f?Dockerfile-webapi -t ? 11.4.76.193/redis/testapi?.
鏡像重命名: docker tag? c57112b8e05f 11.4.76.193/sba/sba:latest
docker push
登錄內(nèi)網(wǎng)倉庫:
docker ?login ?11.4.76.193
push到倉庫:?docker?push 11.4.76.193/sba/sba:latest
4鸟雏、啟動docker實例:?docker run -P -d springboot
5享郊、刪除鏡像:
chown-R mysql:mysql ././scripts/mysql_install_db?--user=mysql --datadir=/usr/local/mysql/data/mysql
-P 隨機(jī)映射一個端口到主機(jī)端口
-p 映射指定的端口
容器互聯(lián) --link,docker會在兩容器建創(chuàng)建通信隧道
第三章:docker-compose
sudo yum -y install epel-release
sudo yum -y install python-pip
pip install --upgrade pip
sudo pip install -U docker-compose