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

傻瓜式教學(xué)Docker 使用docker compose部署 php nginx mysql

這篇具有很好參考價值的文章主要介紹了傻瓜式教學(xué)Docker 使用docker compose部署 php nginx mysql。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

首先你可以準(zhǔn)備這個三個服務(wù),也可以在docker compose 文件中 直接拉去指定鏡像,這里演示的是鏡像服務(wù)已經(jīng)在本地安裝好了,提供如下:

PHP

# 設(shè)置基礎(chǔ)鏡像
FROM php:8.2-fpm


# install dependencies
RUN apt-get update && apt-get install -y \
        vim \
        libzip-dev \
        libpng-dev \
        libjpeg-dev \
        iputils-ping \
        libmcrypt-dev \
        libmcrypt4 \
        libmhash-dev \
        libmhash2 \
        libxml2 \
        libxml2-dev \
        libbz2-1.0 \
        libbz2-dev \
        libfreetype6-dev \
	&& pecl install redis && docker-php-ext-enable redis \
        && rm -rf /var/lib/apt/lists/*

# install more php extensions
RUN docker-php-ext-configure gd --with-freetype --with-jpeg
RUN docker-php-ext-install zip pdo_mysql gd


# Use the default production configuration
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
# 安裝 OPcache
RUN docker-php-ext-install opcache

日常用的擴展都有了應(yīng)該,

RUN docker-php-ext-configure gd --with-freetype --with-jpeg
RUN docker-php-ext-install zip pdo_mysql gd

這兩個你也可以移到上面的RUN一同安裝

Nginx

# 設(shè)置基礎(chǔ)鏡像
FROM nginx

# 安裝一些必要的工具和額外軟件包
RUN apt-get update && apt-get install -y \
    vim \
    curl \
    && rm -rf /var/lib/apt/lists/*

Mysql

直接從官方鏡像資源中拉去

docker pull mysql

這樣你將產(chǎn)生三個鏡像

docker布署php+mysql,docker,php,nginx

下面開始利用這三個鏡像去構(gòu)建你的項目容器

1.找到你的項目地址,比如我的:

/home/wanghaiyang/project/customeFrame/fr

docker布署php+mysql,docker,php,nginx

2.準(zhǔn)備一個文件夾,用來放你的compse.yml文件(默認情況下,這一組服務(wù)的名字就是你這個文件夾名字),

docker布署php+mysql,docker,php,nginx

3.準(zhǔn)備一個compose.yml文件:內(nèi)容如下? ?

version: '3'

services:
  # PHP 服務(wù)
  php_server:
    image: php8.2
    # 使用的 PHP 鏡像
    volumes:
      - /home/wanghaiyang/project/customeFrame/fr:/usr/share/nginx/html
    ports:
      - "9000:9000"
    # 其他 PHP 相關(guān)配置...
    container_name: "compose-php"
    networks:
       - custome-network
       
  # Nginx 服務(wù)
  api_server:
    image: nginx
    # 使用的 Nginx 鏡像

    volumes:
      - /home/wanghaiyang/project/customeFrame/fr:/usr/share/nginx/html
      - ./custome_frame.conf:/etc/nginx/conf.d/default.conf
      # 映射本地文件系統(tǒng)中的目錄到容器中,確保 Nginx 使用自定義配置

    ports:
      - "8080:80"
      # 將主機的 8080 端口映射到容器的 8080 端口

    depends_on:
      - php_server
      - db_server
      # 定義依賴關(guān)系,確保 Nginx 在 PHP 和 MySQL 之后啟動
    container_name: "compose-api"
    networks:
       - custome-network
  # MySQL 服務(wù)
  db_server:
    image: mysql
    # 使用的 MySQL 鏡像

    # 其他 MySQL 相關(guān)配置...
    environment:
      MYSQL_ROOT_PASSWORD: wqzbxh@2018$$
      # 設(shè)置 MySQL root 用戶密碼
    ports:
      - 3700:3306
    # 將主機的 3700 端口映射到容器的 3306 端口
    volumes:
      - ./db_data:/var/lib/mysql
    container_name: "compose-db"
    networks:
       - custome-network

  # Adminer 服務(wù)(用于管理 MySQL 數(shù)據(jù)庫)
  adminer:
    image: adminer
    # 使用的 Adminer 鏡像

    restart: always
    ports:
      - 3701:8080
      # 將主機的 3701 端口映射到容器的 8080 端口
    container_name: "compose-adminer"
networks:
   custome-network:

? ??

再給一個custome_frame.conf文件,

server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;
    root   /usr/share/nginx/html;
    # 配置根目錄和默認文件
    location / {
  
        index  index.php index.html index.htm;
    }

    # 如果文件不存在,重寫URL到index.php
    if (!-e $request_filename){
        rewrite ^(.*)$ /index.php last;
        break;
    }

    # 將 PHP 腳本通過 FastCGI 傳遞到監(jiān)聽在 127.0.0.1:9000 上的服務(wù)器
    location ~ \.php$ {
       fastcgi_pass   php_server:9000;
       fastcgi_index  index.php;
       fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
       fastcgi_param  SCRIPT_NAME      $fastcgi_script_name;
       include        fastcgi_params;
    }

    # 禁止訪問 .htaccess 文件,如果 Apache 的文檔根與 nginx 的文檔根相符
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

這個時候已經(jīng)全部結(jié)束了

adminer 這個東西是 管理數(shù)據(jù)庫的,前身是phpAdmin的影子,它長這個樣子

docker布署php+mysql,docker,php,nginx然后在你的當(dāng)前目錄直接就

docker compose up -d

docker布署php+mysql,docker,php,nginx

docker布署php+mysql,docker,php,nginx

然后就成功了,我們這個時候訪問一下測試一下

docker布署php+mysql,docker,php,nginx

OK沒問題,說明Nginx 已經(jīng)和 PHP 正常通訊了,我們再來看一下數(shù)據(jù)庫請求;

證明也是沒問題的

docker布署php+mysql,docker,php,nginx

上面的基本上及參數(shù)一換就能用文章來源地址http://www.zghlxwxcb.cn/news/detail-790281.html

到了這里,關(guān)于傻瓜式教學(xué)Docker 使用docker compose部署 php nginx mysql的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 在 CentOS 7.4 上使用 Docker極速部署 LNMP (Linux, Nginx, MySQL, PHP) 環(huán)境和 WordPress

    前置CentOS7條件: 關(guān)閉防護墻: setenforce = 0 systemctl stop firewalld 1. 安裝 Docker* 如果你的系統(tǒng)中還沒有安裝 Docker,可以使用以下命令進行安裝: ? sudo yum install docker 啟動 Docker 服務(wù)并設(shè)置開機自啟: sudo systemctl start docker sudo systemctl enable docker 2. 安裝 Docker Compose Docker Compose 可以讓

    2024年01月17日
    瀏覽(24)
  • Docker部署nginx+php環(huán)境,簡單可用!

    Docker部署nginx+php環(huán)境,簡單可用!

    第一步: 安裝Docker 訪問下面地址,根據(jù)你的需要下載安裝docker運行環(huán)境。 下載docker desktop https://www.docker.com/ 如果你是Windows、macOS(Intel/M1)、Linux桌面OS,都可以下載到對應(yīng)版本進行安裝,相對命令行方式,更加簡單方便。 安裝完成后,運行docker desktop,顯示如下界面: 在任

    2024年02月07日
    瀏覽(16)
  • docker 部署 nginx+php+mysql 環(huán)境

    docker 部署 nginx+php+mysql 環(huán)境

    記錄一下docker部署web服務(wù)器流程。nginx,mysql,php不同的版本配置內(nèi)容可能會不同。 docker常用命令 目錄結(jié)構(gòu) 創(chuàng)建目錄 運行PHP容器 php容器內(nèi)容目錄結(jié)構(gòu)如下: PHP5.4升級后,php.ini-dist不見了,出現(xiàn)了php.ini-developmen和php.ini-production。 php.ini-development 對應(yīng)于 php.ini-dist,適合開發(fā)測

    2024年04月24日
    瀏覽(24)
  • 使用docker-compose.yml快速搭建開發(fā)、部署環(huán)境(nginx、tomcat、mysql、jar包、各種程序)以及多容器通信和統(tǒng)一配置

    image 鏡像名稱,可去鏡像市場查找自己需要的 hostname 容器內(nèi)服務(wù)名 container_name 容器名 volumes 可以把自己電腦的路徑映射到容器中的文件夾中 networks 寫同一個網(wǎng)絡(luò)可以讓容器之間進行通信 啟動 在項目根目錄的命令行中輸入 docker-compose up 停止 在項目根目錄的命令行中輸入 d

    2024年02月12日
    瀏覽(27)
  • Docker部署php運行環(huán)境(php-fpm+nginx)

    Docker部署php運行環(huán)境(php-fpm+nginx)

    前言 如果使用docker去部署一套php的運行環(huán)境,我們需要構(gòu)建出nginx、php-fpm兩個容器,nginx通過fast_cgi協(xié)議去轉(zhuǎn)發(fā)php-fpm中的端口,從而實現(xiàn)web server的搭建,接下來以php的laravel框架為演示例子。 部署php-fpm 第一步 編寫php-fpm鏡像的Dockerfile: ./Dockerfile 第二步 配置Crontab定時任務(wù):

    2024年02月06日
    瀏覽(23)
  • Docker-Compose編排Nginx1.25.1+PHP7.4.33+Redis7.0.11環(huán)境

    實踐說明:基于RHEL7(CentOS7.9)部署docker環(huán)境(23.0.1、24.0.2),編排也可應(yīng)用于RHEL7-9(如AlmaLinux9.1),但因為docker的特性,適用場景是不限于此的。 文檔形成時期:2017-2023年 因系統(tǒng)或軟件版本不同,構(gòu)建部署可能略有差異,但本文未做細分,對稍有經(jīng)驗者應(yīng)不存在明顯障礙。 因軟件

    2024年01月22日
    瀏覽(19)
  • Docker的配置和部署,并搭建php和nginx環(huán)境

    Docker的配置和部署,并搭建php和nginx環(huán)境

    服務(wù)器環(huán)境:CentOS 7.6 說下體驗: 通過安裝進度還是有些報錯出現(xiàn)的,但是一向“兼容不錯的寶塔”還是對他抱有一線希望。 最后還是安裝成功了。 ?裝好了,如何使用? Docker 是基于命令行使用的,那現(xiàn)在通過一些實際問題去使用一些命令! 1.首先查看是否安裝成功。通過

    2024年02月09日
    瀏覽(21)
  • 用MacBook實操:docker本地部署mysql+php+nginx壞境

    用MacBook實操:docker本地部署mysql+php+nginx壞境

    大家好,我拿出我的macbook,帶著大家實操用docker部署mysql+php+nginx環(huán)境。 之前的小白實操搭建Nginx1.2.0+PHP7.0+MySQL5.7+Thinkphp5項目,看這篇就夠了,歡迎閱讀。 之前的是服務(wù)器上配置環(huán)境,現(xiàn)在在mac本地搭建全棧開發(fā)環(huán)境。 目錄 1.docker 1.1docker下載: 1.2配置docker下載鏡像 1.3 在本地

    2024年02月09日
    瀏覽(16)
  • Docker Ubuntu php nginx mysql redis 開發(fā)環(huán)境部署教程

    點擊: ubuntu 22.04 配置多版本 php nginx mysql redis 超簡單教程

    2024年02月08日
    瀏覽(31)
  • 使用docker-compose做nginx服務(wù)

    使用docker-compose做nginx服務(wù)

    目錄 Docker Compose 可以輕松、高效的管理容器, 它是一個用于定義和運行多容器 Docker 的應(yīng)用程序工具. 除了docker Compose還有一個技術(shù)k8s也能實現(xiàn)快速的部署。 可以一鍵啟動,一鍵停止,非常方便 一.上傳nginx配置文件 二.docker-compose安裝與配置 1.上傳文件 2.添加可執(zhí)行權(quán)限 3.創(chuàng)建

    2024年02月10日
    瀏覽(20)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包