@
備註:本文以CentOs 7為例。
Docker 要求 CentOS 系統的核心版本不低於 3.10
uname -r
我的版本是:3.10.0-1160.53.1.el7.x86_64
yum -y update
sudo yum install ‐y yum‐utils device‐mapper‐persistent‐data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
yum -y install docker-ce
systemctl start docker
docker -v
systemctl enable docker
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker
// 若有舊版本docker解除安裝
yum remove docker docker-common docker-selinux docker-engine
// 刪除映象
docker rmi 容器名字
或者
docker rm-f 容器id
// 構建映象
docker build
//停止docker服務:
systemctl stop docker
//重新載入docker組態檔
systemctl daemon-reload
// 檢視執行映象
docker ps
// 檢視所有映象
docker ps -a
// 檢視主目錄空間使用情況
df -h /home
// 檢視空間
df -h
// 檢視狀態
docker stats
// 取消自啟動
docker update --restart=no 容器ID
// 根據容器id檢視程序
docker top 容器id
// 檢視執行緒
docker top -p 程序id
// 檢視整個docker啟動紀錄檔
docker logs -f docker容器id
備註:
本文主要是本地單機用docker部署多個專案,所以只要用docker拉取tomcat及jdk,直連雲伺服器中redis、mysql、mongodb等服務即可。
前提在本地宿主機中先建立統一目錄並設定好tomcat、專案設定及專案jar包,建立容器同時複製tomcat、專案設定及專案jar包。
之後更新多個專案的tomcat、專案設定及專案jar包時,只要更新宿主伺服器的統一目錄中的tomcat、專案設定、及專案jar包即可。
備註:當前tomcat、專案設定及專案jar包都放在該宿主機根目錄/setfile/下,具體參照目錄結構如下:
mkdir setfile
chmod 775 /setfile/*
chmod +x /setfile/config/catalina.sh
docker pull tomcat:8.5.82-jdk8
備註:
前面的埠8180是該宿主機對應app-01的埠,如果是新的app-02則再開另外的埠如8280,
後面的8080埠是該容器的埠,同一臺宿主機可以都用這個埠,或者用其他埠。
docker run -p 8180:8080 --name app-01 \
// 該路徑為放置專案jar包路徑
-v /setfile/webapps/:/usr/local/tomcat/webapps/ \
// 該路徑為專案紀錄檔路徑
-v /setfile/logs/:/setfile/logs/ \
// 該路徑為專案統一時間設定
-v /etc/localtime:/etc/localtime \
// 該路徑為tomcat的server.xml設定路徑
-v /setfile/config/server.xml:/usr/local/tomcat/conf/server.xml \
// 該路徑為專案字型設定路徑
-v /setfile/config/STFANGSO.TTF:/usr/share/fonts/chinese/STFANGSO.TTF \
// 該路徑為專案證件設定路徑
-v /setfile/cert/:/cert/ \
// 該路徑為tomcat的catalina.sh路徑
-v /setfile/config/catalina.sh:/usr/local/tomcat/bin/catalina.sh \
--restart=always -d tomcat:8.5.82-jdk8
docker start app-01 // 啟動
docker stop app-01 // 停止
docker restart app-01 // 重啟
docker update --restart=always app-01
隨心所往,看見未來。Follow your heart,see light!
歡迎點贊、關注、留言,收藏及轉發,一起學習、交流!