走啊走
加油

腾讯轻量云搭建DOCKER+NGINX+PHP?

服务器价格表

腾讯轻量云搭建DOCKER+NGINX+PHP完整指南

结论先行

在腾讯轻量云上使用Docker部署Nginx+PHP环境是最佳实践方案,既能保持环境隔离,又便于管理和迁移。下面将分步骤详细介绍搭建过程。

准备工作

  • 购买腾讯轻量云服务器(推荐CentOS 7.6+/Ubuntu 20.04+)
  • 确保服务器已安装Docker和Docker Compose
  • 开放服务器80、443端口(Web服务)和22端口(SSH)

核心步骤

1. 安装Docker和Docker Compose

Docker是容器化部署的核心工具,必须先正确安装

# 安装Docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
systemctl start docker
systemctl enable docker

# 安装Docker Compose
curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

2. 创建项目目录结构

推荐的组织方式:

/project
  ├── docker-compose.yml    # Docker Compose配置文件
  ├── nginx
  │   └── conf.d
  │       └── default.conf  # Nginx站点配置
  ├── php
  │   └── php.ini           # PHP自定义配置
  └── www                   # 网站代码目录

3. 编写docker-compose.yml

这是整个环境的核心配置文件

version: '3'

services:
  nginx:
    image: nginx:latest
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./nginx/conf.d:/etc/nginx/conf.d
      - ./www:/var/www/html
    depends_on:
      - php
    restart: always

  php:
    image: php:7.4-fpm
    volumes:
      - ./www:/var/www/html
      - ./php/php.ini:/usr/local/etc/php/conf.d/custom.ini
    restart: always

  # 可选: 数据库服务
  # mysql:
  #   image: mysql:5.7
  #   environment:
  #     MYSQL_ROOT_PASSWORD: yourpassword
  #   volumes:
  #     - ./mysql:/var/lib/mysql
  #   restart: always

4. 配置Nginx

编辑nginx/conf.d/default.conf

server {
    listen 80;
    server_name your_domain.com;
    root /var/www/html;
    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ .php$ {
        fastcgi_pass php:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

5. 配置PHP

编辑php/php.ini添加自定义PHP配置,例如:

upload_max_filesize = 20M
post_max_size = 20M
memory_limit = 256M

6. 启动服务

docker-compose up -d

验证安装

  1. www目录创建info.php
    <?php phpinfo(); ?>
  2. 访问http://your_server_ip/info.php查看PHP信息页

优化建议

  • 安全第一:配置HTTPS证书(可使用Let's Encrypt免费证书)
  • 性能调优:根据项目需求调整Nginx和PHP的配置参数
  • 使用.env文件管理敏感信息(如数据库密码)
  • 定期备份重要数据(网站代码和数据库)

常见问题解决

  • 端口冲突:确保80/443端口未被其他程序占用
  • 文件权限问题:确保www目录对PHP进程可写
  • 容器互联问题:使用docker network确保容器间能正常通信

总结

在腾讯轻量云上使用Docker部署Nginx+PHP环境既高效又灵活,通过容器化技术实现了环境隔离和快速部署。这种方法特别适合需要频繁部署或管理多个项目的场景,大大简化了服务器环境配置和维护工作。