一篇文章搞明白Docker

155 阅读2分钟

一图看懂docker容器化技术(容器化技术不止docker)与虚拟化技术

docker.png

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,它提供了成套的解决方案,从弹性伸缩,到负载均衡,到持续监控等。

附: