Docker-compose up returns "not implemented" what worng

Hi,
I created a docker-compose file as below

version: "3.8"
services:
  administration:
    image: repo.my-private-repo:1111/imagename:tagname
    ports: 
      - 10101:80

When I run docker-compose up it do nothing but prints “not implemented”. I am not able to find anything related to this over internet.

Hi Sumit.

I’ve not seen this before, but it would be helpful to know a lot more about your config. Things like:

  • Docker engine version
  • Compose version
  • OS
  • Full compose YAML file
  • Have you tried docker-compose --verbose up
  • Does it work with other compose files
  • Does it work if you run a different version of the image
  • Is the app in the image doing something special or different to a normal image
  • etc.

Hi,

Thanks for quick reply. Here is the information you asked.

  • Docker engine version : Docker version 20.10.7, build f0df350
  • Compose version : Docker Compose version 2.0.0-beta.4
  • OS : host windows , image OS : windows
  • Full compose YAML file : only one service (administration) in compose file
  • Have you tried docker-compose --verbose up : same output “not implemented”
  • Does it work with other compose files : I checked for Linux mongodb image and its working
  • Does it work if you run a different version of the image : don’t have other version
  • Is the app in the image doing something special or different to a normal image : there is asp .net web application and running some powershell scripts to configuring that. The image is running without any problem if run with docker run
    docker run -d -p 10101:80 --name administration repo.private-repo:9443/corasequenceadministration:tagname
  • etc.

I also checked it with another window based docker and same issue there.
do I need to install something for window based container to run from docker-compose.

version: "3.8"
services:
  s4dv1:
    image: sumit84mca/sample4docker:v1
    ports: 
      - 10101:80 
  s4dv2:
    image: sumit84mca/sample4docker:v2
    ports: 
      - 10102:80

same problem with this compose as well.

Hi Sumit - I’ve not used Docker compose with windows containers before (which is what it seems like you’re doing here). Have you tried adding the platform: windows line to your compose file shown here? https://devblogs.microsoft.com/premier-developer/mixing-windows-and-linux-containers-with-docker-compose/

This is an older post and refers to an earlier version of compose but it appears the platform setting has been re-introduced based on what I’m seeing here: compose-spec/spec.md at master · compose-spec/compose-spec · GitHub

Have you tried running any other windows containers with compose? Like grab a public one and see if that works or gives you the same error?

I’m a little confused. Are you running on Docker Desktop on Windows??

If so, do you have Windows containers enabled? I ask this because you mentioned that a Linux image worked fin with docker run.

Also, have you tried the platform: windows flag?

It could be that your host is setup for Linux containers at the moment.

Yesterday, I’ve updated a Windows Docker Desktop running Linux containers to the June 5th Docker version 20.10.7, build f0df350 which for me came with docker-compose version 1.29.2, build 5becea4c.

I am not seeing the problems you describe. Assuming Compose does not differ for Linux or Windows images, maybe this is a problem with the beta version that you’re somehow using?

1 Like

I’m having the same issue. It started happening since I updated docker to latest version. Everything had been working fine and no changes made. but after docker updated, I started seeing this “not implemented” message when I run docker-compose up

hi,
This is because of beta version of docker-compose. I downloaded the docker from docker for windows and with it docker-compose beta version was installed.
This I downloaded from docker for windows. Now it is working fine. With this the docker-compose version 1.29.2, build 5becea4c is installed.
So uninstall docker-desktop completely(remove all files that are related to docker installation. I removed them manually) from your system and then install using the correct installer.
I hope this will solve your issue.

2 Likes

Fixed it.
It’s related to docker compose v2 beta which is experimental feature

You can simply disable it in either in Docker desktop app

  1. Open Docker desktop app, then go to Setting. You will see “General”, “Resources”, “Docker Engine” and then “Experimental Features”. you can disable it from here

  2. OR simply run this command - c:> docker disable-v2

Hope it fixes it for you too

3 Likes

You probably mean ‘docker-compose disable-v2’, which works on my machine

2 Likes

That helped me. I added platform: windows and it removed error not implemented for me.

My issue was due to incorrect syntax, i.e, my version of docker compose is hyphenated:

docker-compose up

Docker Compose V2 does not need a hyphen:

docker compose up

docker-compose is the single node orchestrator everyone knows and uses.
dock compose is the build-in compose support of the docker cli that targets cloud environments only!

Both tools are NOT interchangeable and support different target environments.

Seems my last response is not true anymore: Release v2.0.0 · docker/compose · GitHub

The current release of docker compose IS a docker-cli plugin, which needs to be located in ~/.docker/cli-plugins/docker-compose (any filename matching “^[a-z][a-z0-9]*$” does the job actualy.

Functialy it replaced docker-compose, but is now a docker-cli plugin, instead of a standalone python application. I just used docker compose up -d to deploy a compose file to the local docker engine.