天天看點

CentOS 7 下安裝 Docker 及操作指令

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 應用的路徑即可。