国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺

這篇具有很好參考價值的文章主要介紹了[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1. Docker-compose概述

1.1 簡介

docker-compose 是實現(xiàn)在單機上對容器集群編排管理的工具。

docker-compose是基于python開發(fā)的,能運行docker的平臺,都能用docker-compose編排管理容器。

本質(zhì)就是在yaml格式docker-compose配置模板文件里定義多個容器的啟動參數(shù)和依賴關系,并使用docker-compose根據(jù)這個模板文件的配置啟動和管理容器集群。

Dockerfile 文件  -->  docker build 一個個構建鏡像  -->  docker run 一個個創(chuàng)建并啟動容器

Dockerfile 文件  -->  docker-compose 自動完成所有的鏡像的構建和容器的創(chuàng)建、啟動

1.2 docker-compose 的三大概念

項目project -> 包含一個或多個服務service -> 包含一個或多個容器的鏡像、映射端口、環(huán)境變量等啟動參數(shù)
  • 默認使用項目的目錄名做project項目名,支持使用 -p--project-name 來指定項目名
  • 在項目目錄里要包含一個 docker-compose 配置模板文件,默認為 docker-compose.yml,支持使用 -f 或 --file 來指定項目的配置模板文件
  • 在配置模板文件里要包含一個或者多個服務,每個服務包含啟動容器的名稱、鏡像、映射端口、環(huán)境變量、掛載點、網(wǎng)絡模式、依賴關系等容器啟動的配置參數(shù)

1.3 docker-compose配置模板文件常用的字段

字段 用法 描述
image 現(xiàn)成的鏡像:標簽 指定鏡像
build 指定 Dockerfile 文件名
command 容器啟動命令 執(zhí)行命令,覆蓋容器啟動后默認執(zhí)行的命令
container_name –name 指定容器名稱,由于容器名稱是唯一的,如果指定自定義名稱,則無法scale指定容器數(shù)量
environment -e,-env 添加環(huán)境變量
networks –net,–network 加入網(wǎng)絡,引用頂級networks下條目
ports -p 暴露容器端口,與 -p 相同,但端口不能低于 60
volumes -v 掛載一個宿主機目錄或命令卷到容器,命名卷要在頂級 volumes 定義卷名稱
volumes_from –volumes-from,僅版本2支持,版本3 ,使用頂級卷進行共享 從另一個服務或容器掛載卷,可選參數(shù) :ro 和 :rw
hostname -h,–hostname 容器主機名
sysctls –sysctl 在容器內(nèi)設置內(nèi)核參數(shù)
links –link 連接到另外一個容器,- 服務名稱[:服務別名]
privileged –privileged 用來給容器root權限,注意是不安全的,true
restart –restart 重啟策略
depends_on 定義服務之間依賴關系
depends_on: 
  - php
  - httpd

1.4 docker-compose 常用命令及格式

docker-compose -f docker-compose.yml <選項> -d

-f, --file FILE :使用特定的 compose 模板文件,默認為 docker-compose.yml
-p, --project-name NAME :指定項目名稱,默認使用目錄名稱
-d :在后臺運行
選項 功能
build 重新構建服務
ps 列出容器
up 創(chuàng)建和啟動容器
exec 在容器里面執(zhí)行命令
scale 指定一個服務容器啟動數(shù)量
top 顯示容器進程
logs 查看容器輸出
down 刪除容器、網(wǎng)絡、數(shù)據(jù)卷和鏡像
stop/start/restart 停止/啟動/重啟容器

2. YAML 文件的詳細介紹及編寫注意事項

2.1 簡介

YAML 是一種標記語言,它可以很直觀的展示數(shù)據(jù)序列化格式,可讀性高。

類似于 json 數(shù)據(jù)描述語言,語法比 json 簡單的很多。

  • YAML 數(shù)據(jù)結構通過縮進來表示
  • 連續(xù)的項目通過減號來表示
  • 鍵值對用冒號分隔
  • 數(shù)組用中括號 [] 括起來
  • hash 用花括號 {} 括起來。

2.2 yaml的特性

2.2.1 語法特點

  • 大小寫敏感
  • 通過縮進表示層級關系
  • 不支持制表符 tab 鍵縮進,只能使用空格縮進
  • 縮進的空格數(shù)目不重要,只要相同層級左對齊,通常開頭縮進2個空格
  • 用 # 號注釋

2.2.2 數(shù)據(jù)結構

  • 對象: 鍵值對的字典
  • 數(shù)組: 一組按次序排列的列表
  • 純量: 單個的且不可再分的值
# 純量
hello
# 數(shù)組
- Cat
- Dog
- Goldfish
# 對象
animal: pets

2.2.3 引號的區(qū)別

#單引號(‘’): 特殊字符作為普通字符串處理
name: 'Hi,\nTom'

#雙引號(“”): 特殊字符作為本身想表示的意思
name: "Hi,\nTom"

2.2.4 內(nèi)置類型列表

# YAML允許使用個感嘆號(!)強制轉換數(shù)據(jù)類型
# 單嘆號通常是自定義類型,雙嘆號是內(nèi)置類型
money: !!str
123
date: !Boolean
true
對應編號 內(nèi)置類型 解釋說明
1 !!int 整數(shù)類型
2 !!float 浮點類型
3 !!bool 布爾類型
4 !!str 字符串類型
5 !!null 空值
6 !!set 集合
7 !!seq 列表
8 !!map 鍵值表
9 !!binary 字符串類型
10 !!timestamp 日期時間類型
11 !!omap/!!pairs 鍵值列表

2.3 yaml文件格式

文件名格式以 .yml 或者.yaml 為后綴,用 空格縮進表示字段的層級關系,可讀性高,易于人類管理。

一個字段key有多個值的表達式
橫向?qū)懛ǎ?test: ["test1", "test2", "test3"]

縱向?qū)懛ǎ?ntest:
- "test1"
- "test2"
- "test3"
#多級字段的格式
頂級/一級字段:
    二級字段1: ["值1", "值2"]
    二級字段2: 
	    三級字段: 值     對象object類型
value:            value: 相當于echo helloworld!
  hello
  world!

value: |          value: 相當于echo -e "hello\nworld!"
  hello
  world!

value: |-         value: 相當于echo -n helloworld!
  hello
  world!
  
value: |+         value: 相當于echo -e "hello\nworld!\n"
  hello
  world!

value: >          value: 相當于echo "hello world!"
  hello
  world!
  
name: &a aaa    相當于 a=yaml
book: *a              相當于 echo $a , book:aaa

2.4 json格式簡介 (拓展)

#json格式:文件名格式以 .json 為后綴,用 {} 表示字段的層級關系,程序接口解析效率高。

{ "字段": "值"}
{ "debug": true }          布爾值類型
{ "scj": "aaa" }     字符串類型

{
  "k1": ["scj", "scj1", "scj2"],
  "k2": ["zhangsan", 
           "lisi", 
		   "wangwu"]
}


{
  "websites": {                      一級字段
    "memory": "512M",                二級字段
	"disk": "100G",
    "cpu": {                         三級字段
	  "name": ["inter", "amd"]
	}
  }
}

3. 部署docker-compose服務

3.1 前置準備

#服務器
192.168.67.100

提前安裝了nginx mysql php的鏡像
systemctl stop firewalld
setenfore 0

3.2 安裝docker-compose

#下載
curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺,云原生,docker,容器,架構

#安裝
chmod +x /usr/local/bin/docker-compose

#查看版本
docker-compose --version

[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺,云原生,docker,容器,架構

3.3 創(chuàng)建工作目錄,編寫相關Dockerfile文件

3.3.1 創(chuàng)建工作目錄

mkdir /opt/compose_lnmp
cd /opt/compose_lnmp

mkdir nginx mysql php

3.3.2 編寫創(chuàng)建nginx、mysql、php的鏡像的Dockerfile文件

詳情見構建LNMP架構并運行Wordpress個人博客平臺

3.4 編寫配置文件docker-compose.yml

編寫配置文件~docker-compose.yml·
使用現(xiàn)有的鏡像創(chuàng)建容器(本地/倉庫) images: name:tag
或者現(xiàn)場構建,基于Dockerfile

cd /opt/compose_lnmp

#本次nginx使用現(xiàn)場構建,php和mysql使用本地鏡像
vim docker-compose.yml

version: '3'
services:
  nginx:
   image: nginx:lnmp
   container_name: nginx
   ports:
   - 80:80
   - 443:443
   volumes:
   - ./nginx/html/:/usr/local/nginx/html/
   - ./nginx/nginx.conf:/usr/local/nginx/conf/nginx.conf
   networks:
     lnmp:
       ipv4_address: 172.18.0.10
  mysql:
   image: mysql:lnmp
   container_name: mysql
   privileged: true
   volumes:
   - db-dir:/usr/local/mysql
   networks:
     lnmp:
      ipv4_address: 172.18.0.20

  php:
   image: php:lnmp
   container_name: php
   ports:
   - 9000:9000
   volumes:
   - db-dir:/usr/local/mysql
   - ./nginx/html/:/usr/local/nginx/html/
   networks:
      lnmp:
        ipv4_address: 172.18.0.30
   depends_on:
   - nginx
   - mysql

networks:
   lnmp:
    driver: bridge
    ipam:
     config:
     - subnet: 172.18.0.0/16
volumes:
   db-dir:

3.5 根據(jù)配置文件來構建并啟動容器

docker-compose -f docker-compose.yml up -d

[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺,云原生,docker,容器,架構

3.6 登錄容器

#登錄到Mysql容器

docker exec -it mysql /bin/bash -c "mysql"
create database wordpress;

grant all privileges on wordpress.* to 'wordpress'@'%' identified by '123456';
grant all privileges on *.* to 'root'@'%' identified by 'abc123';
flush privileges;

[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺,云原生,docker,容器,架構

#登錄到nginx容器

docker exec -it nginx /bin/bash
cd /usr/local/nginx
#修改html目錄的屬主
chown nginx html 

[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺,云原生,docker,容器,架構

#重啟容器
docker restart php
docker restart nginx
docker restart mysql

3.7 訪問宿主機IP,安裝Wordpress

#瀏覽器訪問 

http://192.168.67.100/wordpress/index.php

[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺,云原生,docker,容器,架構
[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺,云原生,docker,容器,架構
[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺,云原生,docker,容器,架構文章來源地址http://www.zghlxwxcb.cn/news/detail-722333.html

到了這里,關于[云原生1. ] 使用Docker-compose一鍵部署Wordpress平臺的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【云原生】Docker-compose部署flink

    Apache Flink的數(shù)據(jù)流編程模型在有限和無限數(shù)據(jù)集上提供單次事件(event-at-a-time)處理。在基礎層面,F(xiàn)link程序由流和轉換組成。 Apache Flink的API:有界或無界數(shù)據(jù)流的數(shù)據(jù)流API、用于有界數(shù)據(jù)集的數(shù)據(jù)集API、表API。 [3] 數(shù)據(jù)流的運行流程 Flink程序在執(zhí)行后被映射到流數(shù)據(jù)流,每

    2024年02月08日
    瀏覽(30)
  • 【Docker-compose】基于Docker-compose創(chuàng)建LNMP環(huán)境并運行Wordpress網(wǎng)站平臺

    【Docker-compose】基于Docker-compose創(chuàng)建LNMP環(huán)境并運行Wordpress網(wǎng)站平臺

    參見使用Docker構建LNMP環(huán)境并運行Wordpress網(wǎng)站平臺 Docker-Compose將所管理的容器分為三層,分別是 項目(project)、服務(service)以及容器(container) 。 Docker-Compose運行目錄下的所有文件組成一個項目, 若無特殊指定項目名即為當前目錄名 。 一個工程當中可包含多個服務,每個

    2024年02月15日
    瀏覽(20)
  • 使用docker、docker-compose部署微服務

    使用docker、docker-compose部署微服務

    這里已經(jīng)在docker安裝并啟動好了Redis、nacos,配置好了“ruoyi-gateway-prod.yml”文件。 注意如果配置文件中有Redis、MySQL、nacos這些的連接信息,需要把IP地址改為服務器的公網(wǎng)地址或者內(nèi)網(wǎng)地址,不會連接不到。 我這里以微服務版若依的網(wǎng)關服務為例,上傳到指定目錄。 官方文檔

    2024年02月10日
    瀏覽(26)
  • 使用 docker-compose 部署 Jenkins

    使用 docker-compose 部署 Jenkins

    注:我是在虛擬機(Ubuntu)上部署了 docker-compose,然后才使用 docker-compose 部署 Jenkins! 關于如何在 Ubuntu 部署 docker-compose,可以看我其它的文章。 docker_jenkins_compose 目錄下創(chuàng)建 docker-compose.yml 文件: 進入 docker-compose.yml 文件: 按下鍵盤上的 i ,進入可以編寫的模式。 將下面的

    2024年02月17日
    瀏覽(25)
  • 一鍵卸載docker、docker-compose

    1、創(chuàng)建卸載文件:?docker-uninstall.sh ??docker-uninstall.sh 2、vim ?docker-uninstall.sh,輸入以下內(nèi)容 # 卸載舊版本的Docker yum remove docker ? ? ? ? ? ? ? ? ? docker-client ? ? ? ? ? ? ? ? ? docker-client-latest ? ? ? ? ? ? ? ? ? docker-common ? ? ? ? ? ? ? ? ? docker-latest ? ? ? ? ?

    2024年02月03日
    瀏覽(23)
  • 使用dockerfile以及docker compose部署搭建wordpress平臺

    Dockerfile 是一個文本文件,其中包含了構建 Docker 鏡像的指令。它描述了鏡像的構建過程,包括基礎鏡像、安裝的軟件、配置信息等。 ? Dockerfile 以指令的形式定義了構建鏡像的步驟,每一行指令都是一個獨立的步驟。這些指令可以包括從官方倉庫獲取基礎鏡像、運行命令、添

    2024年02月22日
    瀏覽(22)
  • docker部署(使用docker-compose)手把手教程

    docker部署(使用docker-compose)手把手教程

    docker-compose.yml 文件內(nèi)容 ?安裝成功后,運行 docker ps 出現(xiàn)如下報錯 ?表示未啟動docker,運行下列語句即可 安裝完成后,運行 賦予權限即可 在服務器上單獨新建文件夾名為ruoyi-admin dockerfile文件如下 ?執(zhí)行如下命令 這就構建出本地的鏡像了。 ? 依次再構建出ruoyi/ruoyi-xxl-job-adm

    2024年02月01日
    瀏覽(29)
  • linux 一鍵安裝docker docker-compose

    2024年02月16日
    瀏覽(33)
  • 云原生之使用Docker部署wordpress網(wǎng)站

    云原生之使用Docker部署wordpress網(wǎng)站

    WordPress是使用PHP語言開發(fā)的博客平臺,用戶可以在支持PHP和MySQL數(shù)據(jù)庫的服務器上架設屬于自己的網(wǎng)站。也可以把 WordPress當作一個內(nèi)容管理系統(tǒng)(CMS)來使用。 選擇設置中文 設置站點信息。

    2024年02月09日
    瀏覽(18)
  • 使用docker-compose 部署 MySQL(所有版本通用)

    使用docker-compose 部署 MySQL(所有版本通用)

    我這里使用的是MySQL8.0.18,可以自行選擇需要的版本。 這里需要給MySQL做點自定義的配置,比如時區(qū)字符編碼等。 以交互式命令進入容器,也可以使用navicat等客戶端連接,使用Docker安裝MySQL會給root用戶開啟遠程訪問。 使用MySQL自帶客戶端連接工具連接 PS:如果遠程連接不上可

    2024年02月04日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包