services: mariadb: build: ./requirements/mariadb image: mariadb:inception container_name: mariadb env_file: .env secrets: - db_root_password - db_password volumes: - mariadb_data:/var/lib/mysql networks: - inception restart: always wordpress: build: ./requirements/wordpress image: wordpress:inception container_name: wordpress env_file: .env secrets: - db_password - wp_admin_password - wp_user_password volumes: - wordpress_data:/var/www/html networks: - inception depends_on: - mariadb restart: always nginx: build: ./requirements/nginx image: nginx:inception container_name: nginx env_file: .env volumes: - wordpress_data:/var/www/html networks: - inception ports: - "443:443" depends_on: - wordpress restart: always ftp: build: ./requirements/ftp image: ftp:inception container_name: ftp env_file: .env secrets: - ftp_password volumes: - wordpress_data:/var/www/html networks: - inception ports: - "21:21" - "21100-21110:21100-21110" depends_on: - wordpress restart: always static_site: build: ./requirements/static_site image: static_site:inception container_name: static_site networks: - inception ports: - "8080:80" restart: always gitea: build: ./requirements/gitea image: gitea:inception container_name: gitea env_file: .env secrets: - gitea_admin_password volumes: - gitea_data:/data networks: - inception ports: - "3000:3000" restart: always networks: inception: driver: bridge volumes: mariadb_data: driver: local driver_opts: type: none o: bind device: ${DATA_PATH}/mariadb wordpress_data: driver: local driver_opts: type: none o: bind device: ${DATA_PATH}/wordpress gitea_data: driver: local driver_opts: type: none o: bind device: ${DATA_PATH}/gitea secrets: db_root_password: file: ../secrets/db_root_password.txt db_password: file: ../secrets/db_password.txt wp_admin_password: file: ../secrets/wp_admin_password.txt wp_user_password: file: ../secrets/wp_user_password.txt ftp_password: file: ../secrets/ftp_password.txt gitea_admin_password: file: ../secrets/gitea_admin_password.txt