亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    什么是docker 容器編排

    在docker中,通過執(zhí)行一個(gè)YAML文件,將文件中所定義的多個(gè)容器依次啟動(dòng),這就是容器編排;實(shí)現(xiàn)容器編排的工具是“docker-compose”。YAML文件會(huì)定義一系列的容器以及容器運(yùn)行時(shí)的屬性,Compose會(huì)根據(jù)這些配置來管理容器。

    什么是docker 容器編排

    本教程操作環(huán)境:linux5.9.8系統(tǒng)、docker-1.13.1版、Dell G3電腦。

    Docker容器編排

    什么是容器編排
    • 通過執(zhí)行一個(gè)文件,將文件中所定義的多個(gè)容器依次啟動(dòng),這就是容器編排
    • 這個(gè)文件就是yaml文件

    用來實(shí)現(xiàn)容器編排的工具

    • docker-compose

      可以通過安裝Docker Compose工具來實(shí)現(xiàn)基于YAML文件的容器編排,YAML文件會(huì)定義一系列的容器以及容器運(yùn)行時(shí)的屬性,Docker Compose會(huì)根據(jù)這些配置來管理容器。

    安裝docker-compose

    • docker-compose在epel源中
    [root@worker1 ~]# yum install epel-release -y [root@worker1 ~]# yum install docker-compose -y

    docker-compose命令的使用

    • 格式:docker-compose [選項(xiàng)]

    • 選項(xiàng)

      • up:啟動(dòng)定義在yaml文件中的容器
      • down:關(guān)閉定義在yaml文件中的容器
      • -f x.yaml:指定docker-compose所要讀取的yaml文件
      • -d:在后臺(tái)執(zhí)行操作
      • ps:查看基于docker-compose所啟動(dòng)的容器的狀態(tài)
      • logs:查收啟動(dòng)容器過程中的日志信息,用于排除錯(cuò)誤
    案例:

    編寫docker-compose.yaml文件來啟動(dòng)兩個(gè)容器:nginx,php

    1)準(zhǔn)備環(huán)境

    • 安裝epel
    • 安裝docker-compose
    • 重啟docker
    • 重啟防火墻
    [root@master ~]# yum install docker -y [root@master ~]# yum install epel-release -y [root@master ~]# yum install docker-compose -y [root@master ~]# systemctl restart docker [root@master ~]# systemctl restart firewalld

    2)創(chuàng)建yaml文件

    # 編寫yam文件,在文件實(shí)現(xiàn)自動(dòng)啟動(dòng)nginx容器 [root@worker1 ~]# vim docker-compose.yaml
    version: '2' services:   web:     image: nginx:1.17.10     ports:       - 80:80     volumes:       - /opt/html:/web       - /opt/conf/nginx.conf:/etc/nginx/nginx.conf
    • version:指定版本號(hào),2
    • services:設(shè)置要啟動(dòng)服務(wù),一個(gè)服務(wù)就是一個(gè)docker容器

    2)nginx 啟動(dòng)容器

    [root@worker1 ~]# docker-compose up -d

    查看基于yaml文件啟動(dòng)的容器的狀態(tài)

    [root@master ~]# docker-compose ps    Name            Command          State         Ports        -------------------------------------------------------------- root_web_1   nginx -g daemon off;   Up      0.0.0.0:80->80/tcp
    • 狀態(tài)主要是是state:如果是UP,表示正常

    查看啟動(dòng)容器過程中的日志信息

    [root@worker1 ~]# docker-compose logs

    關(guān)閉基于yaml文件所啟動(dòng)的容器

    [root@worker1 ~]# docker-compose down

    3)在第二步的基礎(chǔ)上編輯yaml文件,啟動(dòng)php服務(wù)

    第一步:修改yaml文件

    version: '2'services:   web:     image: nginx     ports:       - 80:80     volumes:       - /opt/html:/web       - /opt/conf/nginx.conf:/etc/nginx/nginx.conf     links:               # 指定php容器的名稱       - php   php:                   # 此處需要和links中的值保持一致     image: php:5.6-fpm     container_name: php   # 此處需要和links中的值保持一致     volumes:       - /opt/php:/php

    第二步:修改nginx的配置文件

    [root@master ~]# vi /opt/conf/nginx.conf          location ~ .php$ {             root           /php;             fastcgi_pass   php:9000;    # 指定php容器名稱,docker會(huì)自動(dòng)將名稱轉(zhuǎn)換成ip             fastcgi_index  index.php;                  fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;             include        fastcgi_params;         }

    第三步:啟動(dòng)服務(wù)

    [root@master ~]# docker-compose up -d [root@master ~]# docker-compose ps Name         Command                        State         Ports        ----------------------------------------------------------------------- php          docker-php-entrypoint php-fpm   Up           9000/tcp           root_web_1   nginx -g daemon off;            Up           0.0.0.0:80->80/tcp

    容器編排應(yīng)用題1

    1 準(zhǔn)備一臺(tái)Centos7的服務(wù)器,檢測網(wǎng)絡(luò)正常

    2 檢查服務(wù)器docker運(yùn)行是否正常,如沒有請安裝

    3 請編寫wordpress.yml模板文件,格式正確

    4 請新建服務(wù)mysql和wordpress,wordpress的啟動(dòng)依賴于mysql服務(wù)

    5 將/opt/wordpress/data目錄掛載到到mysql容器的/var/lib/mysql目錄下,做持久存儲(chǔ)!

    6 MySQL初始信息包括:root密碼,創(chuàng)建的數(shù)據(jù)庫,普通用戶,普通用戶的密碼

    7 wordpress數(shù)據(jù)庫配置正確

    8 wordpress做端口映射,將wordprss的80端口映射在宿主機(jī)的8000端口上

    # 這個(gè)yaml文件要啟動(dòng)兩個(gè)容器 version: '2' services:   # 第一個(gè)容器:wordpress容器   wordpress:     # 指定鏡像名稱     image: wordpress     # 將容器的80端口映射到宿主機(jī)的8000     ports:       - 8000:80     # 設(shè)置將mysql容器的名稱解析程序mysql容器的IP     links:       - mysql     # 設(shè)置容器之間依賴關(guān)系,設(shè)置成必須先啟動(dòng)mysql容器才啟動(dòng)wordpress容器     depends_on:       - mysql   # 第二個(gè)容器:MySQL容器   mysql:     # 指定鏡像名名稱是mysql     image: mysql:5.6     # 設(shè)置容器的名稱的是mysql     container_name: mysql     # 設(shè)置邏輯卷掛載     volumes:        - /opt/wordpress/data:/var/lib/mysql      # 設(shè)置mysql容器的環(huán)境變量     environment:       # 設(shè)置mysql容器中mysql的root密碼為123       MYSQL_ROOT_PASSWORD: 123       # 為wordpress創(chuàng)建一個(gè)數(shù)據(jù)庫,庫名是wordpress       MYSQL_DATABASE: wp          # 創(chuàng)建一個(gè)普通用戶wp       MYSQL_USER: wp       # 為上面的普通用戶設(shè)置密碼是wp       MYSQL_PASSWORD: wp

    9 docker-compose成功啟動(dòng)各個(gè)容器,成功訪問到wordpress頁面

    [root@master ~]# docker-compose up -d [root@master ~]# docker ps
    • 瀏覽器訪問:http://ip:8000

    推薦學(xué)習(xí):《docker視頻教程》

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)