导读 | Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源;跨平台应用容器引擎服务。 |
实验环境
操作系统:Ubuntu 18.04.4 LTS
应用版本:Docker version 19.03.9, build 9d988398e7
镜像举例:mysql:5.6
注意:必须要先安装Docker容器,参考:https://www.linuxprobe.com/ubuntu-install-docker-ce
Docker打包应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,Docker是跨平台的容器引擎,支持Windows、MAC OS、Linux等。
容器是完全使用沙箱机制,相互之间不会有任何接口,实现了资源隔离技术,容器内的资源互不影响,更重要的是容器性能开销极低。
Docker镜像拉取
root@linuxcool:~# docker pull mysql:5.6 5.6: Pulling from library/mysql e62d08fa1eb1: Pull complete c4539e638b12: Pull complete 0acb8f0db2a3: Pull complete e27254901ad3: Pull complete 91e4d538a032: Pull complete 8608c48c2d69: Pull complete 2b7bbeb5e044: Pull complete f86c472cfc00: Pull complete 3081c249e0ee: Pull complete caddb3474aca: Pull complete ec101f8c3a86: Pull complete Digest: sha256:60c27b50ca72d81d92a743a965a82f124a4e123c7d374a021887286408878d60 Status: Downloaded newer image for mysql:5.6 docker.io/library/mysql:5.6
Docker容器备份
root@linuxcool:~# docker image save mysql:5.6 -o mysql:5.6.tar.gz mysql:5.6 mysql:5.6.tar.gz
Docker容器导出
root@linuxcool:~# docker save mysql:5.6 > mysql:5.6.tar.gz mysql:5.6 mysql:5.6.tar.gz
Docker容器恢复
root@linuxcool:~# docker image load -i mysql:5.6.tar.gz mysql:5.6.tar.gz
Docker容器导入
root@linuxcool:~# docker image load < mysql:5.6.tar.gz Loaded image: mysql:5.6 mysql:5.6.tar.gz
Docker容器迁移
Docker容器迁移其实就是把现有的已经在运行Docker容器的服务器迁移到新的容器中,我们可以通过上面备份、恢复、导入、导出操作来完成迁移;如果企业镜像比较多的情况下,也可以配置私有仓库,通过私有仓库去拉取要迁移同步的镜像资源,再运行拉取的镜像,这样也可以完成容器迁移过程;后续继续发布私有仓库harbor的安装及配置,这样可以把业务中的镜像全部推送到私有仓库中,提高工作效率。