Can you show the contents of the file docker-compose.yml ?
Larevel Sail up. Docker Unsupported config option for services.meilisearch: 'platform'
I am trying run the example by documentation The first step "curl -s "https://laravel.build/example-app" | bash" is passed The second step "cd example-app && ./vendor/bin/sail up" Is failed ERROR: The Compose file './docker-compose.yml' is invalid because: Unsupported config option for services.meilisearch: 'platform' ERROR: The Compose file './docker-compose.yml' is invalid because: Unsupported config option for services.meilisearch: 'platform' ERROR: The Compose file './docker-compose.yml' is invalid because: Unsupported config option for services.meilisearch: 'platform'
@Sinnbeck this was created by bash of first step
version: '3'
services:
laravel.test:
build:
context: ./vendor/laravel/sail/runtimes/8.1
dockerfile: Dockerfile
args:
WWWGROUP: '${WWWGROUP}'
image: sail-8.1/app
extra_hosts:
- 'host.docker.internal:host-gateway'
ports:
- '${APP_PORT:-80}:80'
environment:
WWWUSER: '${WWWUSER}'
LARAVEL_SAIL: 1
XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}'
XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}'
volumes:
- '.:/var/www/html'
networks:
- sail
depends_on:
- mysql
- redis
- meilisearch
- selenium
mysql:
image: 'mysql/mysql-server:8.0'
ports:
- '${FORWARD_DB_PORT:-3306}:3306'
environment:
MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
MYSQL_ROOT_HOST: "%"
MYSQL_DATABASE: '${DB_DATABASE}'
MYSQL_USER: '${DB_USERNAME}'
MYSQL_PASSWORD: '${DB_PASSWORD}'
MYSQL_ALLOW_EMPTY_PASSWORD: 1
volumes:
- 'sailmysql:/var/lib/mysql'
networks:
- sail
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
retries: 3
timeout: 5s
redis:
image: 'redis:alpine'
ports:
- '${FORWARD_REDIS_PORT:-6379}:6379'
volumes:
- 'sailredis:/data'
networks:
- sail
healthcheck:
test: ["CMD", "redis-cli", "ping"]
retries: 3
timeout: 5s
meilisearch:
image: 'getmeili/meilisearch:latest'
platform: linux/x86_64
ports:
- '${FORWARD_MEILISEARCH_PORT:-7700}:7700'
volumes:
- 'sailmeilisearch:/data.ms'
networks:
- sail
healthcheck:
test: ["CMD", "wget", "--no-verbose", "--spider", "http://localhost:7700/health"]
retries: 3
timeout: 5s
mailhog:
image: 'mailhog/mailhog:latest'
ports:
- '${FORWARD_MAILHOG_PORT:-1025}:1025'
- '${FORWARD_MAILHOG_DASHBOARD_PORT:-8025}:8025'
networks:
- sail
selenium:
image: 'selenium/standalone-chrome'
volumes:
- '/dev/shm:/dev/shm'
networks:
- sail
networks:
sail:
driver: bridge
volumes:
sailmysql:
driver: local
sailredis:
driver: local
sailmeilisearch:
driver: local
Seems that your docker version does not like this platform: linux/x86_64. Either remove it or try upgrading docker. What OS are you using?
In case you are using ubuntu, you need to be sure you have the PPA installed, your you will get old versions of docker
https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository
docker -v
Docker version 19.03.13, build 4484c46d9d
```
Ubuntu 18
@moledet try the same for docker-compose
@Sinnbeck after updating docker from 19 to 20.10 was not helped, updating docker-compose to 1.29.2 helped
@moledet Great to hear. Yeah you need the newest of both to be able to use all features.
I think this is a typo. .yml files are indent-sensitive. So you need to reformat your .yml file.
@shaungbhone reformat not working, the file from the init of the example sources
@shaungbhone it is valid, but not if you are running an old version of docker compose
@moledet update your docker version.
My OS version Ubuntu 20.04.3 LTS.
My Docker version Docker version 20.10.11, build dea9396
All fine for me.
@moledet
docker-compose.yml uses version: '3' and if you take a look at Compatibility Matrix it supports docker engine 1.13.0+ release and you are using docker version 19.03.13, so that's not the issue.
But platform parameter is added to docker compose version 2.4 and I bet you are using older version of docker compose. You can verify that with docker-compose --version.
You can simply upgrade docker compose by following instructions below in linux machines or take a look at documentation for other OSs https://docs.docker.com/compose/install
sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Apply executable permissions to the binary:
sudo chmod +x /usr/local/bin/docker-compose
If the command docker-compose fails after installation, check your path. You can also create a symbolic link to /usr/bin or any other directory in your path.
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
Test the installation by executing docker-compose --version command and you should see docker-compose version 1.29.2, build 01110ad01
Please or to participate in this conversation.