Para verificar log:
$ journalctl -u etcd
Para iniciar:
$ systemctl start etcd.service
Listar imagens:
$ docker images
Fazer dump de uma imagem:
$ docker save -o nome_arquivo.img nome/repositorio
Onde:
- nome_arquivo.img: um nome qualquer para o arquivo, você escolhe.
- nome/repositorio: o nome que você pega usando o comando
docker images
na coluna REPOSITORY.
Copie o arquivo .img
para a máquina destino e carregue usando o comando:
$ docker load -i nome_arquivo.img
Dado que existe uma instancia com id 6d7fd41f20f4:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6d7fd41f20f4 repo/nome:tag "/bin/foo" 4 hours ago Up 4 hours 0.0.0.0:1234->34/tcp foo
Anote o valor da coluna "COMMAND" e "PORTS", depois salve o estado do container em uma nova imagem:
$ docker commit 6d7fd41f20f4 nome-copia
7cf3d9b6c2c61071fb5ebcfcdf32f2cd6c665c2b537d40ba25afab1c95b87bf7
Agora deve existir a nova imagem criada:
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
nome-copia latest 7cf3d9b6c2c6 10 seconds ago 6.017 MB
repo/nome latest 46336f09623a 8 months ago 6.017 MB
Salve a nova imagem em um arquivo e copie para o servidor de destino:
$ docker save nome-copia | gzip > nome-copia.tgz
$ docker inspect 6d7fd41f20f4 > nome-copia.json
$ scp nome-copia.* [email protected]:/home/user/
No outro servidor, carregue a imagem usando:
$ gzcat nome-copia.tgz | docker load
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
nome-copia latest 7cf3d9b6c2c6 10 seconds ago 6.017 MB
Agora pode rodar a imagem usando o comando e as portas que você anotou alguns passos antes:
$ docker run -d --name foo_2 -p 1234:34 nome-copia /bin/foo
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6d7fd41f20f4 nome-copia "/bin/foo" 4 hours ago Up 4 hours 0.0.0.0:1234->34/tcp foo_2