欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker Nginx容器和Tomcat容器實(shí)現(xiàn)負(fù)載均衡與動靜分離操作

 更新時間:2020年11月19日 16:57:43   作者:富士康質(zhì)檢員張全蛋  
這篇文章主要介紹了Docker Nginx容器和Tomcat容器實(shí)現(xiàn)負(fù)載均衡與動靜分離操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

下載Tomcat8鏡像

[root@localhost ~]# docker search tomcat8
NAME                   DESCRIPTION                   STARS        OFFICIAL      AUTOMATED
ashince/tomcat8             Tomcat GUI Manager pre-configured docker ima…  5                    
podbox/tomcat8                                      2                    [OK]
 
 

這個tomcat包含了jdk而且啟動了可以直接訪問,自己啟動了8080端口

[root@localhost ~]# docker pull ashince/tomcat8
Using default tag: latest
latest: Pulling from ashince/tomcat8
06b22ddb1913: Pulling fs layer 
336c28b408ed: Pull complete 
1f3e6b8d80c3: Pull complete 
[root@localhost ~]# docker images
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE
nginx        latest       2622e6cca7eb    2 weeks ago     132MB
ashince/tomcat8   latest       02aedead27dd    22 months ago    314MB
啟動一個Nginx容器和兩個Tomcat容器
[root@localhost ~]# docker run -itd -p 8080:8080 ashince/tomcat8 
3e3f2aabe67de7ee3f4b6d62176e21aaa9d2302922845cb08ad37af7146b13c5
[root@localhost ~]# docker run -itd -p 8081:8080 ashince/tomcat8 
644d59711c805a626b7c1c219aa018f744098a14dd41e54744d6b13e7ba66a2f
[root@localhost ~]# docker ps
CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS       PORTS          NAMES
cca55c4ad919    ashince/tomcat8   "catalina.sh run"    About a minute ago  Up About a minute  0.0.0.0:8081->8080/tcp  unruffled_lalande
08b58d2f41d6    ashince/tomcat8   "catalina.sh run"    7 minutes ago    Up 7 minutes    0.0.0.0:8080->8080/tcp  relaxed_williamson
aeebcb0b40a2    nginx        "/docker-entrypoint.…"  2 hours ago     Up 2 hours     0.0.0.0:80->80/tcp    priceless_ardinghelli 

#將Nginx容器當(dāng)中的配置拷貝到本地修改,因為容器當(dāng)中沒有vi vim命令
[root@localhost ~]# docker cp 68d2bdf336ed:/etc/nginx/conf.d/default.conf .
[root@localhost ~]# ls
anaconda-ks.cfg default.conf index.html
[root@localhost ~]# grep -vE "#|^$" default.conf 
server {
  listen    80;
  listen [::]:80;
  server_name localhost;
  location / {
    root  /usr/share/nginx/html;
    index index.html index.htm;
  }
  error_page  500 502 503 504 /50x.html;
  location = /50x.html {
    root  /usr/share/nginx/html;
  }
}
 
#兩臺tomcat的ip地址
[root@localhost ~]# for i in {72e174adc77d,080068dae40a};do docker inspect $i| grep -i ipaddr |tail -n 1;done
          "IPAddress": "172.17.0.4",
          "IPAddress": "172.17.0.3",
拷貝靜態(tài)資源到Nginx目錄下做動靜分離 ,同時修改配置文件
#將其中一臺Tomcat的ROOT目錄拷貝到本地,因為做動靜分離Nginx需要訪問靜態(tài)資源要在本地
[root@localhost ~]# docker cp 72e174adc77d:/usr/local/tomcat/webapps/ROOT .
 
#拷貝到Nginx發(fā)布目錄下面
[root@localhost ~]# docker cp ROOT   68d2bdf336ed:/usr/share/nginx/html/
[root@localhost WEB-INF]# docker exec 68d2bdf336ed ls -l /usr/share/nginx/html/ROOT
total 184
-rwxrwxrwx 1 root root 7064 Jun 21 2017 RELEASE-NOTES.txt
drwxrwxrwx 2 root root  21 Jul 27 2017 WEB-INF
-rwxrwxrwx 1 root root 26447 Jun 21 2017 asf-logo-wide.svg
-rwxrwxrwx 1 root root  713 Jun 21 2017 bg-button.png
-rwxrwxrwx 1 root root 1918 Jun 21 2017 bg-middle.png
-rwxrwxrwx 1 root root 1392 Jun 21 2017 bg-nav-item.png
-rwxrwxrwx 1 root root 1401 Jun 21 2017 bg-nav.png
-rwxrwxrwx 1 root root 3103 Jun 21 2017 bg-upper.png
-rwxrwxrwx 1 root root 21630 Jun 21 2017 favicon.ico
-rwxrwxrwx 1 root root 12279 Jun 21 2017 index.jsp
-rwxrwxrwx 1 root root 2376 Jun 21 2017 tomcat-power.gif
-rwxrwxrwx 1 root root 5581 Jun 21 2017 tomcat.css
-rwxrwxrwx 1 root root 2066 Jun 21 2017 tomcat.gif
-rwxrwxrwx 1 root root 5103 Jun 21 2017 tomcat.png
-rwxrwxrwx 1 root root 67795 Jun 21 2017 tomcat.svg
 
#修改后的Nginx配置文件如下,修改完后拷貝會容器當(dāng)中
[root@localhost ~]# docker cp default.conf 68d2bdf336ed:/etc/nginx/conf.d/default.conf 
[root@localhost ~]# docker exec 68d2bdf336ed cat /etc/nginx/conf.d/default.conf 
upstream tomcat_web{
server 172.17.0.3:8080 weight=100 max_fails=2 fail_timeout=15;
server 172.17.0.4:8080 weight=100 max_fails=2 fail_timeout=15;
}
 
server {
  listen    80;
  listen [::]:80;
  server_name localhost;
  error_page  500 502 503 504 /50x.html;
  root  /usr/share/nginx/html; 
  location /{
  proxy_pass http://tomcat_web;
  proxy_set_header host $host;
  } 
  
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
   root /usr/share/nginx/html/ROOT;
   expires 30d;
   access_log off;
  }
  
  location ~ .*\.(eot|ttf|otf|woff|svg)$ {
   root /usr/share/nginx/html/ROOT;
   expires 30d;
   access_log off;
  }
  
  location ~ .*\.(js|css)$ {
   root /usr/share/nginx/html/ROOT;
   expires 30d;
   access_log off;
  }
  location = /50x.html {
    root  /usr/share/nginx/html;
  }
}
 
#加載新的配置項
[root@localhost ~]# docker exec -it 68d2bdf336ed /bin/bash
root@68d2bdf336ed:/# /usr/sbin/nginx -s reload
2020/06/29 07:12:05 [notice] 79#79: signal process started

再去訪問Nginx 80端口如圖所示:

補(bǔ)充知識:Docker 基礎(chǔ)操作 容器自啟動 刪除鏡像和刪除容器

Docker容器自動重啟設(shè)置

重啟reboot操作系統(tǒng)后,發(fā)現(xiàn)docker 服務(wù)未啟動,容器也未啟動,怎么才能重啟后自動啟動呢

1、docker服務(wù)自動重啟設(shè)置

[root@localhost ~]# systemctl enable docker.service

2、docker容器自動啟動設(shè)置

[root@localhost ~]# docker images
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE
nginx        latest       5a3221f0137b    10 months ago    126MB
[root@localhost ~]# docker run -itd -p 80:80 nginx
3e28c4b5c6256c0ba04666751e426987d848b7afeb9c59774d5e9831dc78e5ee
[root@localhost ~]# docker run -itd -p 81:80 nginx
f0597c725fd6b7f4229aa9ab5de4a3cb29d09097a81dc8f64d1a60d469001379
[root@localhost ~]# docker port f0597c725fd6
80/tcp -> 0.0.0.0:81
 
[root@localhost ~]# docker ps
CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS       PORTS        NAMES
f0597c725fd6    nginx        "nginx -g 'daemon of??  30 seconds ago   Up 29 seconds    0.0.0.0:81->80/tcp  elastic_allen
3e28c4b5c625    nginx        "nginx -g 'daemon of??  35 seconds ago   Up 33 seconds    0.0.0.0:80->80/tcp  tender_volhard

3、 docker容器自動啟動設(shè)置

[root@localhost ~]# docker update --restart=always f0597c725fd6 3e28c4b5c625 
f0597c725fd6
3e28c4b5c625 
 
[root@localhost ~]# reboot -h now
Connection closed by foreign host. 
 
[root@localhost ~]# docker ps
CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS       PORTS        NAMES
f0597c725fd6    nginx        "nginx -g 'daemon of??  13 minutes ago   Up 2 minutes    0.0.0.0:81->80/tcp  elastic_allen
3e28c4b5c625    nginx        "nginx -g 'daemon of??  13 minutes ago   Up 2 minutes    0.0.0.0:80->80/tcp  tender_volhard
 

當(dāng)一個host中鏡像和容器較多,需要重置時可選擇刪除其中部分或全部的鏡像和容器。那么你就需要下面的操作了。

1、刪除容器

[root@localhost ~]# docker ps -a
CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS       PORTS        NAMES
27c5c4d3cf86    nginx        "nginx -g 'daemon of??  2 minutes ago    Up 2 minutes    0.0.0.0:80->80/tcp  gracious_nash
61cccfe238a8    nginx        "nginx -g 'daemon of??  2 minutes ago    Up 2 minutes    0.0.0.0:81->80/tcp  distracted_grothendieck
[root@localhost ~]# docker ps -aq
27c5c4d3cf86
61cccfe238a8

1)首先需要停止所有的容器

[root@localhost ~]# docker ps -aq
f0597c725fd6
3e28c4b5c625
8855c7777f83
466d2efe3dd9
20ca589b1a10
e5457b41cae6
314d1d01c941
 
[root@localhost ~]# docker stop $(docker ps -aq)
f0597c725fd6
3e28c4b5c625
8855c7777f83
466d2efe3dd9
20ca589b1a10
e5457b41cae6
314d1d01c941
[root@localhost ~]# docker ps
CONTAINER ID    IMAGE        COMMAND       CREATED       STATUS       PORTS        NAMES
 

2)刪除所有的容器(只刪除單個時把后面的變量改為image id即可)

[root@localhost ~]# docker rm -f $(docker ps -aq)
f0597c725fd6
3e28c4b5c625
8855c7777f83
466d2efe3dd9
20ca589b1a10
e5457b41cae6
314d1d01c941
[root@localhost ~]# docker ps -aq
[root@localhost ~]# 

2、刪除鏡像

1)查看host中的鏡像

docker images

2)刪除指定id的鏡像

docker rmi <image id>

3)刪除全部的images

docker rmi $(docker images -q)

3、當(dāng)要刪除的iamges和其他的鏡像有關(guān)聯(lián)而無法刪除時

可通過 -f 參數(shù)強(qiáng)制刪除

docker rmi -f $(docker images -q)

以上這篇Docker Nginx容器和Tomcat容器實(shí)現(xiàn)負(fù)載均衡與動靜分離操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Nginx和Apache幾種防盜鏈配置方法實(shí)例

    Nginx和Apache幾種防盜鏈配置方法實(shí)例

    這篇文章主要介紹了Nginx和Apache幾種防盜鏈配置方法實(shí)例,本文使用判斷來路的方法實(shí)現(xiàn)防盜鏈,分別給出Nginx和Apache配置實(shí)例,需要的朋友可以參考下
    2015-02-02
  • Nginx Location指令URI匹配規(guī)則詳解小結(jié)

    Nginx Location指令URI匹配規(guī)則詳解小結(jié)

    這篇文章主要介紹了Nginx Location指令URI匹配規(guī)則詳解小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Nginx配置網(wǎng)頁轉(zhuǎn)發(fā)的實(shí)現(xiàn)步驟

    Nginx配置網(wǎng)頁轉(zhuǎn)發(fā)的實(shí)現(xiàn)步驟

    本文主要介紹了Nginx配置網(wǎng)頁轉(zhuǎn)發(fā)的實(shí)現(xiàn)步驟,實(shí)現(xiàn)將云服務(wù)器的80端口轉(zhuǎn)發(fā)到另一臺服務(wù)器部署的網(wǎng)頁,具有一定的參考價值,感興趣的可以了解一下
    2024-05-05
  • nginx限速之連接數(shù)限制技巧分享

    nginx限速之連接數(shù)限制技巧分享

    通過查看Nginx的并發(fā)連接,我們可以更清除的知道網(wǎng)站的負(fù)載情況。下面這篇文章主要給大家介紹了關(guān)于nginx限速之連接數(shù)限制技巧的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。
    2018-01-01
  • Linux環(huán)境下安裝nginx教程

    Linux環(huán)境下安裝nginx教程

    大家好,本篇文章主要講的是Linux環(huán)境下安裝nginx教程,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • 強(qiáng)大的Nginx配置生成器詳解

    強(qiáng)大的Nginx配置生成器詳解

    Nginx?Config?是一款可以一鍵生成?Nginx?配置的神器,相當(dāng)給力,這篇文章主要介紹了強(qiáng)大的Nginx配置生成器,需要的朋友可以參考下
    2022-11-11
  • Nginx安全配置全過程

    Nginx安全配置全過程

    這篇文章主要介紹了Nginx安全配置全過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • k8s部署ingress-nginx的方法步驟

    k8s部署ingress-nginx的方法步驟

    k8s集群服務(wù)部署好之后,需要對外提域名訪問,這時候就需要ingress-nginx了,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • nginx配置多個前端項目實(shí)現(xiàn)步驟

    nginx配置多個前端項目實(shí)現(xiàn)步驟

    本文主要介紹了nginx配置多個前端項目實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • nginx訪問報403錯誤的幾種情況詳解

    nginx訪問報403錯誤的幾種情況詳解

    最近訪問新安裝的nginx,發(fā)現(xiàn)報403錯誤,所以這篇文章主要給大家介紹了關(guān)于nginx訪問報403錯誤的幾種情況,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07

最新評論