Docker搭建Ngnix、php5.6、php8、postgresql、redis

一、手动创建Volumes(卷),名称为:dev-pgdata

这个内容作为postgresql使用

二、修改docker-compose.yml文件对应路径

E:\wwwroot可修改,也可以修改为卷名

E:/backup/www可修改

E:\dev-server\nginx\conf.d可修改

注意:在php8中fpm端口是9200,所以下面php8端口映射应该是9010:9200,如果一定要9000需要这样改docker exec -it dev-php8.fpm /bin/bash

cd /usr/local/etc/php-fpm.d

vim www.conf 里面的9200端口修改为9000

vim zz-docker.conf 里面的9200端口修改为9000

bash 复制代码
volumes:
  dev-pgdata:  #pg数据库卷组
    external: true
networks:
  dev-network:
    driver: bridge
    ipam:
      config:
        - subnet: 172.28.0.0/16
services:
  openresty:
    image: openresty/openresty:latest
    container_name: dev-openresty
    networks:
      dev-network:
        ipv4_address: 172.28.0.10
    ports:
      - "8080:80"  # 这边是8080端口指向80端口,一般修改为80端口指向80端口接口,即80:80
      - "8043:443"
    volumes:
      - E:\wwwroot:/www  #项目的根目录,项目都放在这边,这边设置的是wwwroot下,后续需要变更直接追加就可以
      - E:\dev-server\nginx\conf.d:/etc/nginx/conf.d  #nginx conf
      - E:\dev-server\ningx\log:/var/log/nginx #nginx log
      - E:/backup/www:/data/www        # Win 宿主机路径写法  这是备份,可以不需要直接删除
    restart: always

  php5.6:
    image: php5.6-containers          # 你本地已有这个镜像
    container_name: dev-php5.6
    networks:
      dev-network:
        ipv4_address: 172.28.0.11
    ports:
      - "9020:9000"
    volumes:
      - E:\wwwroot:/www
      - E:/backup/www:/data/www
    restart: always

  php8fpm:
    image: php8.fpm-containers        # 你本地已有这个镜像
    container_name: dev-php8.fpm
    networks:
      dev-network:
        ipv4_address: 172.28.0.12
    ports:
      - "9010:9000"
    volumes:
      - E:\wwwroot:/www
      - E:/backup/www:/data/www
    restart: always
  redis:
    image: redis-containers        # 你本地已有这个镜像
    container_name: dev-redis
    networks:
      dev-network:
        ipv4_address: 172.28.0.15
    ports:
      - "6378:6379"
    volumes:
      - E:/dev-server/redis:/etc/redis #conf 
    restart: always
  postgres:
    image: postgres        # 你本地已有这个镜像
    container_name: dev-postgres
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: M908uJ76e$90e_wew
    networks:
      dev-network:
        ipv4_address: 172.28.0.13
    ports:
      - "16432:5432"
    volumes:
      - dev-pgdata:/var/lib/postgresql/data
      - E:/backup/database:/data/
    restart: always

三、安装

1、docker-compose.yml、openresty-containers.tar、php5.6-containers.tar、php8.fpm-containers.tar和redis-containers.tar都放在G:\dev-server文件加载

openresty-containers.tar、php5.6-containers.tar、php8.fpm-containers.tar和redis-containers.tar需要挂载到docker中

docker load -i G:\dev-server\openresty-containers.tar

docker load -i G:\dev-server\ php5.6-containers.tar

docker load -i G:\dev-server\php8.fpm-containers.tar

docker load -i G:\dev-server\redis-containers.tar

是否挂载成功可以在这边看

2、dos命令进入G:\dev-server

3、运行docker network create --driver bridge --subnet 172.28.0.0/16 dev-network

设置网络,需要注意命令中的ip需要与docker-compose.yml中的一致

4、执行安装:需要注意git-deploy名称需要与容器组名称一致,在这边使用的是dev-server

docker compose -p git-deploy up -d

注意:1、如果对于安装包不是本地的,而是通过docker下载下来的注意docker-compose.yml文件中image需要修改。

以openresty-containers.tar为例:

原来openresty:

image: openresty/openresty:latest

当时下载的名称为openresty/openresty:1.27.1.2-4-alpine-fat

则修改为openresty:

image: openresty/openresty:1.27.1.2-4-alpine-fat

2、如果报一下错误:说明网络已经存在又去创建

直接修改.yml文件

3、需要注意redis安装会失败,需要在redis挂载目录下增减redis.conf文件

4、如果windows需要进入docker的linux系统的php5.6

docker exec -it dev-php5.6 /bin/bash

5、php安装扩展命令。以下命令式安装psql扩展

docker-php-ext-install psql

需要对应安装包的可以去我上传的资源中查看

相关推荐
绘梨衣54732 分钟前
Docker+FastAPI+MySQL 项目部署报错汇总
mysql·docker·fastapi
cui_ruicheng44 分钟前
Linux进程间通信(三):System V IPC与共享内存
linux·运维·服务器
运维全栈笔记1 小时前
Linux安装配置Tomcat保姆级教程:从部署到性能调优
linux·服务器·中间件·tomcat·apache·web
dllmayday2 小时前
Linux 上用终端连接 WiFi
linux·服务器·windows
ACP广源盛139246256732 小时前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
百年੭ ᐕ)੭*⁾⁾3 小时前
docker使用neo4j
docker·容器·neo4j
峥无3 小时前
Linux系统编程基石:静态库·动态库·ELF文件·进程地址空间全景图
linux·运维·服务器
码云数智-大飞4 小时前
本地部署大模型:隐私安全与多元优势一站式解读
运维·网络·人工智能
Harvy_没救了5 小时前
【网络部署】 Win11 + VMware CentOS8 + Nginx 文件共享服务 Wiki
运维·网络·nginx
春风有信5 小时前
【2026.05.01】Windows10安装Docker Desktop 4.71.0.0步骤及问题解决
运维·docker·容器