在Ubuntu上使用PhpStorm与Docker集成可以极大地提高开发效率和环境一致性。以下是详细的步骤指南:
首先,确保你已经在Ubuntu系统上安装了Docker。可以按照以下步骤进行操作:
更新系统软件包:
sudo apt update
sudo apt upgrade
安装必要依赖:
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release
添加Docker官方GPG密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
设置Docker稳定版仓库:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
更新软件包列表:
sudo apt update
安装Docker Engine:
sudo apt install docker-ce docker-ce-cli containerd.io
启动并启用Docker服务:
sudo systemctl start docker
sudo systemctl enable docker
验证Docker安装:
sudo docker run hello-world
配置Docker连接:
File -> Settings(或 PhpStorm -> Preferences 在 macOS 上)。Build, Execution, Deployment -> Docker。+ 按钮添加一个新的Docker连接。Connection 标签页中,输入Docker主机的URL(通常是 unix:///var/run/docker.sock),并确保 Use Docker API 选项被勾选。Test Connection 按钮测试连接是否成功。创建Dockerfile:
在你的项目根目录下创建一个 Dockerfile,用于定义你的Docker镜像。以下是一个简单的示例:
# 使用官方PHP镜像作为基础镜像
FROM php:7.4-fpm
# 安装必要的扩展
RUN docker-php-ext-install pdo_mysql
# 设置工作目录
WORKDIR /var/www/html
# 复制项目文件到容器中
COPY . /var/www/html
# 安装Composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# 安装项目依赖
RUN composer install
# 暴露端口
EXPOSE 9000
# 启动PHP-FPM服务
CMD ["php-fpm"]
创建docker-compose.yml:
在你的项目根目录下创建一个 docker-compose.yml 文件,用于定义你的Docker服务。以下是一个简单的示例:
version: '3'
services:
web:
build: .
container_name: phpstorm_docker_app
volumes:
- .:/var/www/html
ports:
- "9000:9000"
networks:
- app-network
networks:
app-network:
driver: bridge
配置PHPStorm远程解释器:
Project: <your_project_name> -> PHP Interpreter。Add...。Add PHP Interpreter 对话框中,选择 Docker。OK 完成配置。启动Docker容器:
Run 按钮启动你的Docker容器。设置断点并进行调试:
Debug 按钮启动调试会话。通过以上步骤,你就可以在Ubuntu上使用PhpStorm与Docker集成,享受一致的开发和调试体验。这种方法不仅提高了开发效率,还确保了环境的一致性,减少了由于环境差异导致的问题。