Open felix-cao opened 1 year ago
# https://docs.docker.com/compose/compose-file/compose-file-v3/ version: '3.7' services: db: image: mysql:8.0.23 # 使用哪个镜像, 类似 docker run 指定的镜像名 container_name: echargecloud_db # 给当前容器指定一个名称, = docker run --name 参数 command: --default-authentication-plugin=mysql_native_password --sql_mode=NO_ENGINE_SUBSTITUTION volumes: # 当前容器和宿主机指定数据卷,类似 docker run -v, 使用绝对路径时,必须先创建。 - db_data:/var/lib/mysql ports: - 3306:3306 # 宿主机与容器的端口映射,类似 docker run -p 参数 networks: - internal environment: # 给当前容器启动指定环境,类似 docker run -e MYSQL_ROOT_PASSWORD=root MYSQL_ROOT_PASSWORD: my-super-secret-local-password MYSQL_DATABASE: wordpress MYSQL_USER: zongfei MYSQL_PASSWORD: zongfei app: image: webdevops/php-nginx-dev:8.0 container_name: echargecloud_app working_dir: /app networks: - internal #command: bash -c 'sleep ${SLEEP_TIMEOUT} && npm run migration && node --max-old-space-size=1200 index.js' environment: WEB_DOCUMENT_ROOT: /app XDEBUG_REMOTE_AUTOSTART: 'true' XDEBUG_MODE: debug XDEBUG_CONFIG: client_host=host.docker.internal client_port=9003 DB_HOST: echargecloud_db DB_USERNAME: zongfei DB_PASSWORD: zongfei DB_TABLE: wordpress ports: - 8080:80 volumes: - ./:/app:rw,cached depends_on: - db networks: internal: driver: bridge volumes: # 声明数据卷别名 db_data:
docker-compose up
{ "version": "0.2.0", "configurations": [ { "name": "Attach remote XDebug", "type": "php", "request": "launch", "hostname": "localhost", "log": true, "port": 9003, "pathMappings": { "/app": "${workspaceFolder}", "/var/www/html": "${workspaceFolder}", } } ] }
一、docker-compose.yml
docker-compose up
二、PHP remote debug in VSCODE