如今Docker的使用已经非常普遍,特别在互联网公司。使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力。在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如今在微服务架构越来越流行的情况下,微服务+Docker的完美组合,更加方便微服务架构运维部署落地。

本文对Docker以及其常用命令进行简要介绍。

Docker是什么?

Docker 是世界领先的软件容器平台。开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用 Docker 可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用 Docker 可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为 Linux 和 Windows Server 应用发布新功能。

linux系统docker下跑windows镜像 linux docker windows_docker

Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了 Docker,就不用担心环境问题。

总体来说,Docker 的接口相当简单,用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。

常用命令及使用

1.获取镜像



    1. docker pull NAME[:TAG]
    2. docker pull centos:latest



    2.查看镜像列表,列出本地的所有images


    1. docker images [OPTIONS][NAME]
    2. docker images centos


    3.删除镜像,从本地删除一个已经下载的镜像


    1. docker rmi IMAGE [IMAGE...]
    2. docker rmi centos:latest


    4.启动Container盒子



      1. docker run [OPTIONS] IMAGE [COMMAND][ARG...]
      2. docker run -ti centos /bin/bash


      5.查看容器列表,可看到我们创建过的所有container



        1. docker ps [OPTIONS]
        2. docker ps -a



        6.停止一个正在运行的容器



        1. docker kill 容器id



        7.重启一个正在运行的容器



        1. docker restart 容器id



        8.启动一个已经停止的容器



        1. docker start 容器id



        9.移除一个或多个容器实例


        1. docker rm [OPTIONS] CONTAINER [CONTAINER...]
        2. 移除所有微运行的容器
        3. docker rm $(docker container ls -aq)


        10.指定的容器运行命令



        1. docker exec -it  容器id /bin/bash



        11.查询看容器的详细信息



        1. docker inspect 容器id



        12.查看日志



        1. docker logs 容器id



        13.安装MySQL



          1. docker pull mysql:8
           
            
          1. 第1种:
          docker run--name docker-mysql -e MYSQL_ROOT_PASSWORD=root -d -p 3306:3306 mysql:82. 第2种(挂载、字符编码):
          docker run -p 3306:3306 --name docker-mysql-v /usr/local/mysql:/var/lib/mysql-e MYSQL_ROOT_PASSWORD=123 -d mysql:8 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci



          /var/lib/mysql是mysql容器数据存储位置

          14.安装Redis


          1. docker pull redis
          2. docker run --name dokcer-redis -d -p 6379:6379 redis