Skip to content

Instantly share code, notes, and snippets.

@ajeetraina
Created October 29, 2017 12:21
Show Gist options
  • Save ajeetraina/defff61db96b88144509d728196d7853 to your computer and use it in GitHub Desktop.
Save ajeetraina/defff61db96b88144509d728196d7853 to your computer and use it in GitHub Desktop.
Docker Compose File for MacVLAN Network Driver ( Single Node)
version: '3.3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
networks:
- myvlan
environment:
MYSQL_ROOT_PASSWORD: wordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
networks:
- myvlan
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
networks:
private:
myvlan:
driver: macvlan
driver_opts:
parent: ens160.30
ipam:
config:
- subnet: 100.98.26.0/24
@PhilipSchmid
Copy link

@moesphemie: Ensure there is a network interface called ens160 on your Docker host.

@eugenepark1: I guess this is the host's sub interface which is also in 100.98.26.0/24 and also tend to be using VLAN 30. VLAN 30 is not a must, its more a best practice that you name sub interfaces according to it's assigned VLAN.

Regards,
Philip

@kcallis
Copy link

kcallis commented Aug 3, 2018

I am pulling my hair on the same issue (kind of). When ever I start docker compose, the message I get is:

ERROR: The Compose file '/root/docker/docker-compose-macvlan.yml' is invalid because:
services.qbittorrent.networks.macvlan20 contains unsupported option: 'driver'

I am using 3.6, and I am using the same syntax as the OP. And yes, I am using the correct interface:

qbittorrent:
image: "linuxserver/qbittorrent"
hostname: qbittorrent
container_name: "qbittorrent"
volumes:
- ${USERDIR}/docker/qbittorrent:/config
- ${USERDIR}/Downloads/completed:/downloads
- ${USERDIR}/docker/shared:/shared
networks:
private:
macvlan20:
driver: macvlan
driver_opts:
parent: enp0s25.20
ipam:
config:
- subnet: 192.168.20.0/24
ports:
- "50000:50000"
- "60201:60201"
- "60201:60201/udp"
restart: always
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
- UMASK_SET=002
- WEBUI_PORT=50000

Any pointers would be greatly appreciated!

@antoineco
Copy link

@kcallis notice the very first line in the compose file, the version matters.

@coLATin
Copy link

coLATin commented Mar 28, 2020

followed this code but error popup:
"ERROR: yaml.scanner.ScannerError: mapping values are not allowed here
in "./docker-compose.yaml", line 113, column 18"
截屏2020-03-28下午9 53 13

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment