Как скопировать и переименовать контейнер Docker?
У меня есть контейнер докеров, который я хочу использовать для разделения доступа клиента к базе данных. Я бы хотел иметь один контейнер на одного клиента. Если я запускаю несколько копий контейнера, все они имеют одно и то же имя, единственное различие - это порт, которому назначен контейнер.
Как копировать/переименовывать контейнеры таким образом, чтобы я мог различать контейнер без необходимости обращаться к таблице поиска, которая соответствует назначенному порту клиенту?
Ответы
Ответ 1
Все контейнеры имеют имя uniq. Когда вы выполните docker ps
Вы увидите, что первый столбец - это идентификатор. Затем вы можете управлять контейнерами с помощью этого идентификатора.
Вам действительно нужен этот идентификатор, чтобы выполнить любую операцию на контейнере (stop/start/inspect/etc..)
Я не уверен, что вы пытаетесь сделать, но для каждого клиента вы можете запустить новый контейнер, а затем связать идентификатор контейнера с вашим идентификатором пользователя.
На данный момент в Docker нет имен контейнеров, поэтому вы не можете назвать или переименовать контейнер, вы можете использовать его идентификатор.
В будущих версиях будет реализовано именование для контейнера.
Ответ 2
Команда docker rename
является частью Docker 1.5. Ссылка на фиксацию:
docker github
Ответ 3
Я использую docker 1.0.1, и следующее позволяет мне переименовать изображение:
docker tag 1cf76 myUserName/imageName:0.1.0