一图看懂docker容器化技术(容器化技术不止docker)与虚拟化技术
docker常用命令
- 进入docker客户端 直接输入 docker 命令来查看到 docker 客户端的所有命令选项。
- 通过命令 docker command --help 更具体的了解指定的 docker 命令使用方法,比如 docker stats --help命令
- 常用命令:
$ docker pull tomcat 拉取tomcat镜像
参数说明:
pull 拉取镜像
tomcat: 镜像名
$ docker run -it tomcat /bin/bash 用tomcat镜像启动一个容器,参数为以命令行模式进入该容器
参数说明:
-i: 交互式操作。
-t: 终端。
tomcat: tomcat 镜像。
/bin/bash:镜像名后的是命令,这里希望有个交互式 Shell,因此用的是 /bin/bash。
要退出终端,直接输入 exit:
$ docker ps -a 查看所有的容器
$ docker start 320dbbbcfd77 启动一个已停止运行的容器
$ docker run -it -d --name tomcat-test tomcat /bin/bash 后台运行
-d 参数默认不会进入容器,想要进入容器需要使用指令 docker exec
$ docker stop 容器ID 停止容器
$ docker restart 容器ID 重启停止的容器
$ docker exec -it sdf2535da3 /bin/bash 进入容器
$ docker export sdf2535da3 > tomcat.tar 导出容器
导入容器:
用 docker import 从容器快照文件中再导入为镜像,以下实例将快照文件 tomcat.tar 导入到镜像 test/tomcat:v1(也可以指定url或目录来导入)
$ cat docker/tomcat.tar | docker import - test/tomcat:v1
$ docker rm -f r60fca3342 删除docker容器
$ docker run -d -p 5000:5000 镜像名 web应用启动命令(可有空格)
参数说明:
-d : 让容器后台运行
-p : 容器端口映射,容器内部端口映射至主机
$ docker ps 查看正在运行的容器
$ docker logs -f 容器id或名字 查看容器中运行的web应用程序日志
$ docker top 容器名 查看web应用程序中的进程
$ docker inspect 容器名 展示docker 容器的配置和状态信息
$ docker ps -l 查询最后一次创建的容器
$ docker images 列出本地主机上的镜像
$ docker search tomcat 搜索镜像
$ docker rmi 镜像名 删除镜像
docker部署应用常见场景问题
-
一般我们将文件资源进行挂载,包括日志,挂载后在docker容器中可以直接访问外部挂载目录 。
-
docker容器部署好后需要配置相关端口映射,docker内部端口映射主机外部端口。
-
可以通过dockerfile做docker镜像,上传至镜像库。
-
基本上常用的中间件都可以用docker部署,包括数据库mysql,oracle等,weblogic,tomcat,websphere。
-
我们可以用docker集群管理工具来发布和管理docker,比如k8s。
-
可以使用web dashboard来管理部署docker,有对应的工具。
-
除了端口映射之外,docker还可以设置容器互联,设置共有网络和dns
……
docker与容器化管理技术k8s
先有了容器化技术,为了使容器化技术的运维管理简化,出现了各种容器化管理技术,比如k8s,它提供了成套的解决方案,从弹性伸缩,到负载均衡,到持续监控等。
附:
- docker 官方主页: www.docker.com