摘自 菜鳥教程html
Docker 要求 CentOS 系統的內核版本高於 3.10linux
經過 uname -r 命令查看你當前的內核版本nginx
[root@runoob ~]# uname -r
移除舊的版本web
[root@runoob ~]# yum remove docker
安裝一些必要的系統工具docker
[root@runoob ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
添加軟件源信息vim
[root@runoob ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新 yum 緩存windows
[root@runoob ~]# yum makecache fast
安裝 Docker-cecentos
[root@runoob ~]# yum -y install docker-ce
啓動 Docker 後臺服務緩存
[root@runoob ~]# systemctl start docker
測試運行 hello-worldtomcat
[root@runoob ~]# docker run hello-world
查找Docker Hub上的tomcat鏡像
docker search tomcat
拉取官方的鏡像
docker pull tomcat
這樣 Tomcat 就被安裝好了,接下來進行自定義配置
首先在主機挑選任意一個喜歡的位置創建 tomcat 文件夾,該文件夾中放置安裝 tomcat 的三個配置文件夾,分別爲 conf、logs、webapps 三個文件夾。這三個文件夾能夠在 windows 系統中安裝的 tomcat 目錄中拷貝一份進來。而後執行如下命令。
該命令表明啓動 tomcat,而且設置啓動名稱 name 和端口號 port,並將主機當前目錄下的 conf、logs、webapp 目錄掛載到容器的 /usr/local/tomcat/ 下的 conf、logs、webapp 目錄中,
這樣之後修改 tomcat 只須要修改該目錄下的相關文件便可。
docker run --name tomcat -p 8080:8080 -v $PWD/webapps:/usr/local/tomcat/webapps -v $PWD/logs:/usr/local/tomcat/logs -v $PWD/conf:/usr/local/tomcat/conf -d tomcat
經過運行以上命令只以後,能夠經過 docker ps 查看正在運行的容器,若是有看到 tomcat 則啓動成功,能夠經過服務器公網 IP地址 + 設置的端口號進行訪問
注意:執行該命令須要在本步驟新建的 tomcat 文件夾中執行。
有時候咱們須要修改 tomcat 的端口號或其它配置,即修改 server.xml 文件,那須要怎麼作呢?
首先若是當前有正在運行的 Tomcat,則須要中止並刪除該容器(刪除該容器並非刪除鏡像,所以儘管刪除)
docker stop 00fe9ba25a8c // 中止當前啓動的 tomcat,後跟 tomcat 容器 ID,用 name 也能夠
docker rm 00fe9ba25a8c // 刪除 tomcat 容器
刪除事後去到以前在主機建立的 tomcat 文件夾中,進入 conf 目錄,並經過 vim 命令修改 server.xml 文件,在裏面能夠修改端口號和 docBase 等配置
修改爲功以後回到 tomcat 目錄下,運行下面的命令便可開啓新配置的 tomcat, -p 後跟你修改事後的端口號
docker run --name tomcat -p 8081:8081 -v $PWD/webapps:/usr/local/tomcat/webapps -v $PWD/logs:/usr/local/tomcat/logs -v $PWD/conf:/usr/local/tomcat/conf -d tomcat
當咱們須要將本身的項目跑起來的時候怎麼辦呢?
只須要將本身項目的文件放入 tomcat 文件夾下的 webapps 文件夾中便可,當即生效,不須要重啓 tomcat 服務器。
查找Docker Hub上的 mongo 鏡像
docker search mongo
拉取官方的鏡像
docker pull mongo
注意:在拉取官網鏡像的時候能夠在 mongo 後跟 :X.X,即跟上版本號,例如 mongo:3.2,跟版本號的 TAG 就爲版本號。不跟默認拉取最新版本,默認 TAG 名稱爲 latest ,TAG 名稱能夠經過 docker images 查看
在本身喜歡的目錄下運行如下命令,將主機中當前目錄下的db掛載到容器的/data/db,做爲mongo數據存儲目錄
-p 27017:27017 :將容器的 27017 端口映射到主機的 27017 端口
:latest 表明 TAG 名稱,可跟可不跟
docker run -p 27017:27017 -v $PWD/db:/data/db -d mongo:latest
查看啓動狀況
docker ps
使用mongo鏡像執行mongo 命令鏈接到剛啓動的容器,主機IP爲172.17.0.1
docker run -it mongo:latest mongo --host 172.17.0.1
卸載安裝鏡像文件須要先刪除容器再刪除鏡像
以我刪除 nginx 爲例
第一步:中止 nginx (由於個人 nginx 在運行中,運行中的容器能夠經過 docker ps 查看)
docker stop 00fe9ba25a8c // 後跟容器 ID
第二步:刪除 nginx 容器
docker rm 00fe9ba25a8c // 後跟容器 ID
刪除容器成功後,經過 docker images 還能看到 nginx 依然存在,由於尚未刪除鏡像
第三步:刪除 nginx 鏡像
docker rmi 00fe9ba25a8c // 該容器 ID 經過 docker images 查看
從Docker Hub查找 mongo 鏡像
[root@runoob ~]# docker search mongo
查看本地鏡像列表
[root@runoob ~]# docker images
顯示全部容器
[root@runoob ~]# docker ps -a
顯示全部在運行的容器
[root@runoob ~]# docker ps
拷貝主機的/root/wd_app文件到tomcat容器(容器ID爲96f7f14e99ab)的/usr/local/tomcat/webapps目錄
[root@runoob ~]# docker cp /root/wd_app 96f7f14e99ab:/usr/local/tomcat/webapps