2017-10-03 8 views
1

사용하여이 작성 파일의 스택을 배포 :방법에 스택 도커에 의해 생성 된 서비스 이름을 변경하려면 고정 표시기-작성

docker stack deploy -c docker-compose.yml myapp 

service-name: 
    image: service-image 
    namelike-property: my-custom-service-name // here I would like to know the property 

생성 된 서비스 이름 myapp_service 이름

I 될 것입니다 이 내-맞춤 서비스 이름으로 이름을 지정하고 참조 할 할 것

+0

문서를 보면 이것이 가능하지 않을 수도 있습니다. 도커 작성에는 접두어를 무시할 수있는 프로젝트 이름 옵션이 있지만 스택에는 이와 비슷한 것이없는 것 같습니다. – yamenk

답변

1

서비스 간 통신의 경우 두 통신 서비스가 동일한 네트워크에있는 경우 작성 파일 (서비스 이름은 service-name)에 정의 된대로 serviceName을 사용할 수 있습니다.

docker service ls을 수행하면 모든 서비스 전에 스택 이름이 표시됩니다. 이는 공유 네트워크에없는 동일한 이름을 가진 두 개의 서비스를 가질 수 있기 때문에 가능합니다. 당신은 그것을 바꿀 수 없으며, 그 이름이 중요하지 않고 실제로는 ID이기 때문에 그렇게하는 것이 타당하지 않을 것입니다. 그러나 $ {StackNameILike}를 얻기 위해 스택의 이름을 변경할 수 있습니다. $ {ServiceNameILike}

-1
당신은 같은 것을 사용할 수

:

version: '2' 
services: 
    image:   service-image 
    container_name: my_wonderful_service 
+0

Thx는 제목에서 알 수 있듯이 컨테이너 이름이 아닌'stack deploy'에 의해 생성 된 서비스 이름을 변경해야합니다.'container_name' 속성은 swarm에서 지원되지 않습니다. –