Docker 安裝
官方網站上有各種環境下的安裝指南,比如:CentOS、Ubuntu 和 Debian 系列的安裝。
而我們現在主要介紹的是基于 CentOS 7.x 上面的安裝。
1、檢視是否已經安裝過docker
[root@localhost ~]# yum list installed | grep docker
docker.x86_64 2:1.12.6-55.gitc4618fb.el7.centos @extras
docker-client.x86_64 2:1.12.6-55.gitc4618fb.el7.centos @extras
docker-common.x86_64 2:1.12.6-55.gitc4618fb.el7.centos @extras
2、以上表示已經安裝過,删除docker
[root@localhost ~]# yum remove –y docker.x86_64
[root@localhost ~]# yum remove –y docker-client.x86_64
[root@localhost ~]# yum remove –y docker-common.x86_64
3、安裝docker(-y 表示靜默安裝,安裝過程不再詢問)
[root@localhost ~]# yum install -y docker
4、啟動docker
[root@localhost ~]# systemctl start docker.service
5、停止docker
[root@localhost ~]# systemctl stop docker
6、檢視目前docker狀态
[root@localhost ~]# systemctl status docker
>
Docker 鏡像
7、拉取鏡像
7.1、從 docker hub 拉取
https://hub.docker.com/下面的例子将從Docker Hub 倉庫下載下傳一個 Tomcat 7 版本的伺服器鏡像。
[root@localhost ~]# docker pull tomcat:7
這是docker預設的公用倉庫,不過缺點是國内下載下傳會比較慢。
7.2、從 ustc 拉取(建議使用)
在主控端器編輯檔案:vi /etc/docker/daemon.json
請在該配置檔案中加入(沒有該檔案的話,請先建一個):
{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
}
最後,需要重新開機 docker 服務
[root@localhost ~]# systemctl restart docker
之後再使用 pull 指令拉取鏡像,這時候是從 ustc 擷取鏡像,而且速度杠杠的。
8、列出鏡像
docker images
[root@localhost ~]# docker images
9、删除鏡像
docker rmi 鏡像
[root@localhost ~]# docker rmi tomcat:7
注意:當鏡像建立的容器存在時,無法删除鏡像檔案,需要先删除依賴該鏡像的所有容器,再删除鏡像。
10、導入導出鏡像
導出鏡像:docker save 鏡像 > /root/xx.tar.gz
導入鏡像:docker load < /root/xx.tar.gz
Docker 容器
11、啟動容器
以互動方式啟動容器:docker run -it --name 容器名稱 鏡像 /bin/bash
[root@localhost ~]# docker run -it --name mytomcat tomcat:7 /bin/bash
[root@28cc2a4f8c90 /]#
退出容器
[root@28cc2a4f8c90 /]# exit
exit
[root@localhost ~]#
以守護程序方式啟動容器:docker run -d --name 容器名稱 鏡像
[root@localhost ~]# docker run -d --name mytomcat tomcat:7
f9b59aed3c7de509d6c9d9cc14c3d7774fc50f250b70661a4354df948588393b
12、停止容器
docker stop 容器名稱或者容器ID
[root@localhost ~]# docker stop mytomcat
13、重新開機容器
docker start 容器名稱或者容器ID
[root@localhost ~]# docker start mytomcat
14、删除容器
删除指定容器:docker rm 容器名稱或者容器ID
删除所有容器:docker rm 'docker ps -a -q'
15、檢視容器
docker ps:檢視正在運作的容器
[root@localhost ~]# docker ps
docker ps –a:檢視曆史運作過的容器
[root@localhost ~]# docker ps –a
Docker 應用
16、搭建 Tomcat 服務
docker run -d --name mytomcat -p 8888:8080 鏡像
[root@localhost ~]# docker run -d --name mytomcat -p 8888:8080 tomcat:7
020c28055968b21ccb584d8b60b51b38f44678930b3bc2456eafb0fe40efcd78
17、部署 Web 應用
1、将 war 包上傳到主控端器
2、通過 docker cp 指令将主控端器的 war 包上傳到容器中的 tomcat 的 webapps 目錄下。
以互動界面的方式進入容器中
[root@localhost ~]# docker exec -it mytomcat /bin/bash
root@020c28055968:/usr/local/tomcat# ls
LICENSE RELEASE-NOTES bin include logs temp work
NOTICE RUNNING.txt conf lib native-jni-lib webapps
root@020c28055968:/usr/local/tomcat# exit
[root@localhost ~]# docker cp DockerDemo.war mytomcat:/usr/local/tomcat/webapps
3、tomcat 會自動熱部署,直接通路 Web 應用的路徑即可。