version: "3.9" services: envoy-control-plane: # Use the Dockerfile in the current directory to build the image image: docker.jerxie.com/xds-server:latest # Set a custom container name for easier management container_name: envoy-control-plane # Restart policy to ensure the service comes back up unless manually stopped restart: unless-stopped # Mount the named volume (defined below) to the /app directory in the container ports: - "8090:8080" - "18000:18000" volumes: # Ensure this is mounted read/write for the container - data_volume:/app/data:rw command: ["--nodeID", "home", "--config-dir", "/app/data/config","--db","file:/app/data/data.db?_foreign_keys=on", "--enable-cert-issuance", "webroot-path=/app/data/acme"] # Define the volumes used by the services volumes: # Define a named volume for your code data_volume: # Use the 'local' driver which supports mounting remote filesystems driver: local # Specify the options for the driver driver_opts: # Set the filesystem type to NFS type: "nfs" # IMPORTANT: YOU MUST replace YOUR_UID and YOUR_GID below with the numeric IDs # that own the data directory on your NFS server (e.g., 1000). o: "addr=192.168.68.90,rw,nfsvers=4,uid=1026,gid=100" # Specify the remote path (device) on the NFS server to mount device: ":/volume1/docker/envoy-control-plane/data"