Procházet zdrojové kódy

Merge pull request #259 from milas/dev-envs-apache-php

apache-php: add dev envs config
Guillaume Lours před 3 roky
rodič
revize
9a20ca6236

+ 10 - 0
apache-php/.docker/docker-compose.yaml

@@ -0,0 +1,10 @@
+services:
+  web:
+    build:
+      context: app
+      target: dev-envs
+    ports: 
+      - '80:80'
+    volumes:
+      - /var/run/docker.sock:/var/run/docker.sock
+      - ./app:/var/www/html/

+ 11 - 0
apache-php/README.md

@@ -54,3 +54,14 @@ Stop and remove the containers
 ```
 $ docker compose down
 ```
+
+## Use with Docker Development Environments
+
+You can use this sample with the Dev Environments feature of Docker Desktop.
+
+![Screenshot of creating a Dev Environment in Docker Desktop](../dev-envs.png)
+
+To develop directly on the services inside containers, use the HTTPS Git url of the sample:
+```
+https://github.com/docker/awesome-compose/tree/master/apache-php
+```

+ 22 - 1
apache-php/app/Dockerfile

@@ -1 +1,22 @@
-FROM php:8.0.7-apache
+# syntax=docker/dockerfile:1.4
+
+FROM --platform=$BUILDPLATFORM php:8.0.9-apache as builder
+
+CMD ["apache2-foreground"]
+
+FROM builder as dev-envs
+
+RUN <<EOF
+apt-get update
+apt-get install -y --no-install-recommends git
+EOF
+
+RUN <<EOF
+useradd -s /bin/bash -m vscode
+groupadd docker
+usermod -aG docker vscode
+EOF
+# install Docker tools (cli, buildx, compose)
+COPY --from=gloursdocker/docker / /
+
+CMD ["apache2-foreground"]

+ 3 - 2
apache-php/compose.yaml

@@ -1,8 +1,9 @@
 services:
   web:
-    build: app
+    build:
+      context: app
+      target: builder
     ports: 
       - '80:80'
     volumes:
       - ./app:/var/www/html/
-