I'm unable to connect to a container that's running on a swarm. Seems like the following doesn't work:
docker exec -it <container_ID> bash
Here is some output:
>$ docker service ls
ID NAME REPLICAS IMAGE COMMAND
4rliefwe74o5 login 1/1 login-arm64:1.0
>$ docker service ps login
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR
2jk3s2xs7ce62piunbkiptypz login.1 login-arm64:1.0 odroid64-cluster4 Running Running 5 minutes ago
Then I'll run:
$ docker exec -it 2jk3s2xs7ce62piunbkiptypz bash
or
$ docker exec -it login.1 bash
and see the following errors
Error response from daemon: No such container: 2jk3s2xs7ce62piunbkiptypz
Error response from daemon: No such container: login.1
Use docker ps
to find the names you can use. Look under both CONTAINER ID
and NAMES
, either will work.
>$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e53bff8bebfc login-arm64:1.0 "/bin/sh -c 'node ser" 27 seconds ago Up 25 seconds login.1.cg7fltcu3wfe7ixtnqzg8myy1
>$ docker exec -it e53bff8bebfc bash
root@e53bff8bebfc:/#
The long name is of the form $SERVICE_NAME.$REPLICA_NUMBER.$ID_FROM_SERVICE_PS
>$ docker exec -it login.1.cg7fltcu3wfe7ixtnqzg8myy1 bash
root@e53bff8bebfc:/#